home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
InfoMagic Standards 1994 January
/
InfoMagic Standards - January 1994.iso
/
ccitt
/
1988
/
troff
/
8_5_02.tro
< prev
next >
Wrap
Text File
|
1991-12-22
|
120KB
|
5,346 lines
.rs
.\" Troff code generated by TPS Convert from ITU Original Files
.\" Not Copyright (~c) 1991
.\"
.\" Assumes tbl, eqn, MS macros, and lots of luck.
.TA 1c 2c 3c 4c 5c 6c 7c 8c
.ds CH
.ds CF
.EQ
delim @@
.EN
.nr LL 40.5P
.nr ll 40.5P
.nr HM 3P
.nr FM 6P
.nr PO 4P
.nr PD 9p
.po 4P
.rs
\v'|.5i'
.sp 2P
.LP
\fBRecommendation\ X.224\fR
.RT
.sp 2P
.ce 1000
\fBTRANSPORT\ PROTOCOL\ SPECIFICATION\ FOR\ OPEN\fR
.EF '% Fascicle\ VIII.5\ \(em\ Rec.\ X.224''
.OF '''Fascicle\ VIII.5\ \(em\ Rec.\ X.224 %'
.ce 0
.sp 1P
.ce 1000
\fBSYSTEMS\ INTERCONNECTION\ FOR\ CCITT\ APPLICATIONS\fR
.FS
Recommendation X.224 and ISO 8073 (Information Processing Systems\ \(em\
Open Systems
Interconnection\ \(em\ Transport Protocol Specification) were developed
in close
collaboration and are technically aligned, except for the differences noted
in Appendix\ II.
.FE
.ce 0
.sp 1P
.ce 1000
\fI(Malaga\(hyTorremolinos, 1984; amended at Melbourne, 1988)\fR
.sp 9p
.RT
.ce 0
.sp 1P
.LP
The CCITT,
.sp 1P
.RT
.sp 1P
.LP
\fIconsidering\fR
.sp 9p
.RT
.PP
(a)
that Recommendation X.200 defines the Reference Model of Open Systems Interconnection
for CCITT Applications;
.PP
(b)
that Recommendation X.214 is the Transport Service
Definition for Open Systems Interconnection for CCITT Applications;
.PP
(c)
that Recommendation X.213 is the Network Service
Definition for Open Systems Interconnection for CCITT Applications;
.PP
(d)
that Recommendation T.70 defines the Network\(hyIndependent Basic Transport
Service for Teletex,
.sp 1P
.LP
\fIunanimously declares\fR
.sp 9p
.RT
.PP
(1)
that scope, field of application, references,
definitions, symbols and abbreviations are given in \(sc\(sc\ 1 to\ 4;
.PP
(2)
that the Transport Protocol is overviewed in
\(sc\ 5;
.PP
(3)
that the elements of procedure are as specified in
\(sc\ 6;
.PP
(4)
that the classes of protocol are as specified in
\(sc\(sc\ 7 to 12;
.PP
(5)
that the structure and encoding of the transport
protocol data units is as specified in \(sc\ 13;
.PP
(6)
that the conformance requirements are as specified in
\(sc\ 14;
.PP
(7)
that the state table description of the Transport
Protocol is contained in Annex\ A.
.sp 1P
.ce 1000
\fBCONTENTS\fR
.ce 0
.sp 1P
.sp 2P
.LP
0
\fIIntroduction\fR
.sp 1P
.RT
.sp 1P
.LP
1
\fIScope and field of application\fR
.sp 9p
.RT
.sp 1P
.LP
2
\fIReferences\fR
.sp 9p
.RT
.sp 1P
.LP
3
\fIDefinitions\fR
.sp 9p
.RT
.sp 1P
.LP
4
\fISymbols and abbreviations\fR
.sp 9p
.RT
.sp 1P
.LP
5
\fIOverview of the transport protocol\fR
.sp 9p
.RT
.LP
5.1
Service provided by the transport layer
.LP
5.2
Service assumed from the network layer
.LP
5.3
Functions of the transport layer
.LP
5.4
Classes and options
.LP
5.5
Model of the transport layer
.bp
.sp 1P
.LP
6
\fIElements of procedure\fR
.sp 9p
.RT
.LP
6.1
Assignment to network connection
.LP
6.2
Transport protocol data unit (TPDU) transfer
.LP
6.3
Segmenting and reassembling
.LP
6.4
Concatenation and separation
.LP
6.5
Connection establishment
.LP
6.6
Connection refusal
.LP
6.7
Normal release
.LP
6.8
Error release
.LP
6.9
Association of TPDUs with transport connections
.LP
6.10
Data TPDU numbering
.LP
6.11
Expedited data transfer
.LP
6.12
Reassignment after failure
.LP
6.13
Retention until acknowledgment of TPDUs
.LP
6.14
Resynchronization
.LP
6.15
Multiplexing and demultiplexing
.LP
6.16
Explicit flow control
.LP
6.17
Checksum
.LP
6.18
Frozen references
.LP
6.19
Retransmission on timeout
.LP
6.20
Resequencing
.LP
6.21
Inactivity control
.LP
6.22
Treatment of protocol errors
.LP
6.23
Splitting and recombining
.sp 1P
.LP
7
\fIProtocol classes\fR
.sp 9p
.RT
.sp 1P
.LP
8
\fISpecification for Class 0: Simple Class\fR
.sp 9p
.RT
.LP
8.1
Functions of Class 0
.LP
8.2
Procedures for Class 0
.sp 1P
.LP
9
\fISpecification for Class 1: basic error recovery class\fR
.sp 9p
.RT
.LP
9.1
Functions of Class 1
.LP
9.2
Procedures for Class 1
.sp 1P
.LP
10
\fISpecification for Class 2: multiplexing class\fR
.sp 9p
.RT
.LP
10.1
Functions of Class 2
.LP
10.2
Procedures for Class 2
.sp 1P
.LP
11
\fISpecification for Class 3: error recovery and multiplexing class\fR
.sp 9p
.RT
.LP
11.1
Functions of Class 3
.LP
11.2
Procedures for Class 3
.sp 1P
.LP
12
\fISpecification for Class 4: error detection and recovery class\fR
.sp 9p
.RT
.LP
12.1
Functions of Class 4
.LP
12.2
Procedures for Class 4
.bp
.sp 1P
.LP
13
\fIStructure and encoding of TPDUs\fR
.sp 9p
.RT
.LP
13.1
Validity
.LP
13.2
Structure
.LP
13.3
Connection request (CR) TPDU
.LP
13.4
Connection confirm (CC) TPDU
.LP
13.5
Disconnect request (DR) TPDU
.LP
13.6
Disconnect confirm (DC) TPDU
.LP
13.7
Data (DT) TPDU
.LP
13.8
Expedited data (ED) TPDU
.LP
13.9
Data acknowledgment (AK) TPDU
.LP
13.10
Expedited data acknowledgment (EA)
.LP
13.11
Reject (RJ) TPDU
.LP
13.12
TPDU error (ER) TPDU
.sp 1P
.LP
14
\fIConformance\fR
.sp 9p
.RT
.sp 1P
.LP
\fIAnnex\ A\fR \(em
State Tables
.sp 9p
.RT
.sp 1P
.LP
\fIAnnex\ B\fR \(em
Transport Protocol Identification
.sp 9p
.RT
.sp 1P
.LP
\fIAppendix\ I\fR \(em
Checksum Algorithms
.sp 9p
.RT
.sp 1P
.LP
\fIApendix\ II\fR \(em
Differences between Recommendation X.224 and
ISO 8073 (1986)
.sp 9p
.RT
.sp 2P
.LP
\fB0\fR \fBIntroduction\fR
.sp 1P
.RT
.PP
The Transport Protocol is one of a set of Recommendations produced to facilitate
the interconnection of computer systems. The set of
Recommendations covers the services and protocols required to achieve such
interconnection.
.PP
The Transport Protocol is positioned with respect to other related
Recommendations by the layers defined in the Reference Model of Open Systems
Interconnection for CCITT Applications\ [1]. It is most closely
related to, and lies within the field of application of the Transport
Service\ [2]. It also uses and makes reference to the Network Service\ [3],
whose provisions it assumes in order to accomplish the transport
protocol's aims. The interrelationship of these Recommendations is depicted
in Figure\ 1/X.224.
.RT
.LP
.rs
.sp 13P
.ad r
\fBFigure 1/X.224, (N), p.\fR
.sp 1P
.RT
.ad b
.RT
.LP
.bp
.PP
This Recommendation specifies a common encoding and a number of
classes of transport protocol procedures to be used with different network
qualities of service.
.PP
It is intended that the Transport Protocol should be simple but
general enough to cater for the total range of Network Service qualities
possible, without restricting future extensions.
.PP
The protocol is structured to give rise to classes of protocol which are
designed to minimize possible incompatibilities and implementation
costs.
.PP
The classes are selectable with respect to the Transport and Network Services
in providing the required quality of service for the interconnection of
two session entities (note that each class provides a different set of
functions for enhancement of service qualities).
.PP
This protocol defines mechanisms that can be used to optimize network tariffs
and enhance the following qualities of service:
.RT
.LP
a)
different throughput;
.LP
b)
different error rates;
.LP
c)
integrity of data requirements;
.LP
d)
reliability requirements.
.PP
It does not require an implementation to use all of these
mechanisms, nor does it define methods for measuring achieved quality of
service or criteria for deciding when to release transport connections
following quality of service degradation.
.PP
The primary aim of this Recommendation is to provide a set of rules
for communication expressed in terms of the procedures to be carried out by
peer entities at the time of communication. These rules for communication
are intended to provide a sound basis for development in order to serve
a variety of purposes:
.RT
.LP
a)
as a guide for implementors and designers;
.LP
b)
for use in the testing and procurement of equipment;
.LP
c)
as part of an agreement for the admittance of systems into the open systems
environment;
.LP
d)
as a refinement of the understanding of OSI.
.PP
It is expected that the initial users of the Recommendation will be designers
and implementors of equipment and the Recommendation contains, in notes
or in Annexes, guidance on the implementation of the procedures defined
in the Recommendation.
.PP
It should be noted that, as the number of valid protocol sequences is very
large, it is not possible with current technology to verify that an
implementation will operate the protocol defined in this Recommendation
correctly under all circumstances. It is possible by means of testing to
establish confidence that an implementation correctly operates the protocol
in a representative sample of circumstances. It is, however, intended that
this
Recommendation can be used in circumstances where two implementations fail
to communicate in order to determine whether one or both have failed to
operate
the protocol correctly.
.PP
This Recommendation contains a section on conformance of equipment
claiming to implement the procedures in this Recommendation. Attention
is drawn to the fact that the Recommendation does not contain any tests
to demonstrate this conformance.
.PP
The variations and options available within this Recommendation are
essential to enable a Transport Service to be provided for a wide variety of
applications over a variety of network qualities. Thus, a minimally conforming
implementation will not be suitable for use in all possible circumstances.
It is important therefore to qualify all references to this Recommendation
with
statements of the options provided or required or with statements of the
intended purpose of provision or use.
.RT
.sp 2P
.LP
\fB1\fR \fBScope and field of application\fR
.sp 1P
.RT
.PP
1.1
This Recommendation specifies:
.sp 9p
.RT
.LP
a)
five classes of procedures:
.LP
1)
Class\ 0:\ Simple Class;
.LP
2)
Class\ 1:\ Basic Error Recovery Class;
.LP
3)
Class\ 2:\ Multiplexing Class;
.bp
.LP
4)
Class\ 3:\ Error Recovery and Multiplexing Class;
.LP
5)
Class\ 4:\ Error Detection and Recovery Class;
.LP
for the connection oriented transfer of data and control
information from one transport entity to a peer transport
entity;
.LP
b)
the means of negotiating the class of procedures to be used
by the transport entities;
.LP
c)
the structure and encoding of the transport protocol data
units used for the transfer of data and control
information.
.PP
1.2
The procedures are defined in terms of:
.sp 9p
.RT
.LP
a)
the interactions between peer transport entities through the exchange
of transport protocol data units;
.LP
b)
the interactions between a transport entity and the
transport service user in the same system through the exchange of transport
service primitives;
.LP
c)
the interactions between a transport entity and the network service provider
through the exchange of network service primitives.
.PP
These procedures are defined in the main text of the standard
supplemented by state tables in Annex\ A.
.PP
1.3
These procedures are applicable to instances of communication between systems
which support the Transport Layer of the OSI Reference Model
and which wish to interconnect in an open systems environment.
.sp 9p
.RT
.PP
1.4
This Recommendation specifies, in \(sc\ 14, conformance for systems implementing
these procedures. It does not contain tests which can be used to demonstrate
these conformance requirements.
.sp 9p
.RT
.sp 2P
.LP
\fB2\fR \fBReferences\fR
.sp 1P
.RT
.LP
[1]
Recommendation X.200 \(em Reference Model of Open Systems
Interconnection for CCITT Applications
(see also ISO\ 7498);
.LP
[2]
Recommendation X.214 \(em Transport Service Definition for
Open Systems Interconnection for CCITT Applications
(see also ISO\ 8072;
.LP
[3]
Recommendation X.213 \(em Network Service Definition for
Open Systems Interconnection for CCITT Applications
(see also ISO\ 8348;
.LP
[4]
Recommendation T.70 \(em Network\(hyIndependent Basic Transport
Service for Teletex;
.sp 2P
.LP
\fB3\fR \fBDefinitions\fR
.sp 1P
.RT
.PP
\fINote\fR \ \(em\ The definitions contained in this section make use of
abbreviations defined in \(sc\ 4.
.RT
.PP
3.1
This Recommendation is based on the concepts developed in the Reference
Model of Open Systems Interconnection for CCITT Applications\ [1]
and makes use of the following terms defined in that Recommendation:
.sp 9p
.RT
.LP
a)
concatenation and separation;
.LP
b)
segmenting and reassembling;
.LP
c)
multiplexing and demultiplexing;
.LP
d)
splitting and recombining;
.LP
e)
flow control.
.PP
3.2
For the purpose of this Recommendation, the following
definitions apply:
.sp 9p
.RT
.sp 1P
.LP
3.2.1
\fBequipment\fR
.sp 9p
.RT
.PP
Hardware or software or a combination of both; it need
not be physically distinct within a computer system.
.bp
.RT
.sp 1P
.LP
3.2.2
\fBtransport service user\fR
.sp 9p
.RT
.PP
An abstract representation of the totality of those
entities within a single system that make use of the transport
service.
.RT
.sp 1P
.LP
3.2.3
\fBnetwork service provider\fR
.sp 9p
.RT
.PP
An abstract machine which models the totality of the
entities providing the network service, as viewed by a transport
entity.
.RT
.sp 1P
.LP
3.2.4
\fBlocal matter\fR
.sp 9p
.RT
.PP
A decision made by a system concerning its behaviour in
the Transport Layer that is not subject to the requirements of this
protocol.
.RT
.sp 1P
.LP
3.2.5
\fBinitiator\fR
.sp 9p
.RT
.PP
A transport entity that initiates a CR TPDU.
.RT
.sp 1P
.LP
3.2.6
\fBresponder\fR
.sp 9p
.RT
.PP
A transport entity with whom an initiator wishes to establish
a transport connection.
.PP
\fINote\fR \ \(em\ Initiator and responder are defined with respect to a
single transport connection. A transport entity can be both an initiator
and responder simultaneously.
.RT
.sp 1P
.LP
3.2.7
\fBsending transport entity\fR
.sp 9p
.RT
.PP
A transport entity that sends a given TPDU.
.RT
.sp 1P
.LP
3.2.8
\fBreceiving transport entity\fR
.sp 9p
.RT
.PP
A transport entity that receives a given TPDU.
.RT
.sp 1P
.LP
3.2.9
\fBpreferred class\fR
.sp 9p
.RT
.PP
The protocol class that the initiator indicates in a CR TPDU as
its first choice for use over the transport connection.
.RT
.sp 1P
.LP
3.2.10
\fBalternative class\fR
.sp 9p
.RT
.PP
A protocol class that the initiator indicates in a CR TPDU as an alternative
choice for use over the transport connection.
.RT
.sp 1P
.LP
3.2.11
\fBproposed class\fR
.sp 9p
.RT
.PP
A preferred class or an alternative class.
.RT
.sp 1P
.LP
3.2.12
\fBselected class\fR
.sp 9p
.RT
.PP
The protocol class that the responder indicates in a CC TPDU that it has
chosen for use over the transport connection.
.RT
.sp 1P
.LP
3.2.13
\fBproposed parameter\fR
.sp 9p
.RT
.PP
The value for a parameter that the initiator indicates in a CR
TPDU that it wishes to use over the transport connection.
.RT
.sp 1P
.LP
3.2.14
\fBselected parameter\fR
.sp 9p
.RT
.PP
The value for a parameter that the responder indicates in a CC
TPDU that it has chosen for use over the transport connection.
.bp
.RT
.sp 1P
.LP
3.2.15
\fBerror indication\fR
.sp 9p
.RT
.PP
An N\(hyRESET indication, or an N\(hyDISCONNECT indication with a reason
code indicating an error, that a transport entity receives from the
NS\(hyprovider.
.RT
.sp 1P
.LP
3.2.16
\fBinvalid TPDU\fR
.sp 9p
.RT
.PP
A TPDU which does not comply with the requirements of this
Recommendation for structure and encoding.
.RT
.sp 1P
.LP
3.2.17
\fBprotocol error\fR
.sp 9p
.RT
.PP
A TPDU whose use does not comply with the procedures for the
class.
.RT
.sp 1P
.LP
3.2.18
\fBsequence number\fR \v'2p'
.sp 9p
.RT
.LP
a)
The number in the TPDU\(hyNR field of a DT TPDU which
indicates the order in which the DT TPDU was transmitted by a transport
entity.
.LP
b)
The number in the YR\(hyTU\(hyNR field of an AK or RJ TPDU which indicates
the sequence number of the next DT TPDU expected to be received by a transport
entity.
.sp 1P
.LP
3.2.19
\fBtransmit window\fR
.sp 9p
.RT
.PP
The set of consecutive sequence numbers which a transport entity has been
authorised by its peer entity to send at a given time on a given
transport connection.
.RT
.sp 1P
.LP
3.2.20
\fBlower window edge\fR
.sp 9p
.RT
.PP
The lowest sequence number in a transmit window.
.RT
.sp 1P
.LP
3.2.21
\fBupper window edge\fR
.sp 9p
.RT
.PP
The sequence number which is one greater than the highest sequence number
in the transmit window.
.RT
.sp 1P
.LP
3.2.22
\fBupper window edge allocated to the peer entity\fR
.sp 9p
.RT
.PP
The value that a transport entity communicates to its peer entity to be
interpreted as its new upper window edge.
.RT
.sp 1P
.LP
3.2.23
\fBclosed window\fR
.sp 9p
.RT
.PP
A transmit window which contains no sequence number.
.RT
.sp 1P
.LP
3.2.24
\fBwindow information\fR
.sp 9p
.RT
.PP
Information contained in a TPDU relating to the upper and the
lower window edges.
.RT
.sp 1P
.LP
3.2.25
\fBfrozen reference\fR
.sp 9p
.RT
.PP
A reference which is not available for assignment to a connection because
of the requirements of \(sc\ 6.18.
.RT
.sp 1P
.LP
3.2.26
\fBunassigned reference\fR
.sp 9p
.RT
.PP
A reference that is neither currently in use for identifying a
transport connection nor in a frozen state.
.RT
.sp 1P
.LP
3.2.27
\fBtransparent (data)\fR
.sp 9p
.RT
.PP
TS\(hyuser data which is transferred intact between transport
entities and which is unavailable for use by the transport
entities.
.bp
.RT
.sp 1P
.LP
3.2.28
\fBowner (of a network connection)\fR
.sp 9p
.RT
.PP
The transport entity that issued the N\(hyCONNECT request leading
to the creation of that network connection.
.RT
.sp 1P
.LP
3.2.29
\fBretained TPDU\fR
.sp 9p
.RT
.PP
A TPDU which is subject to the retransmission procedure or
retention until acknowledgment procedure and is available for possible
retransmission.
.RT
.sp 2P
.LP
\fB4\fR \fBSymbols and abbreviations\fR
.sp 1P
.RT
.sp 1P
.LP
4.1
\fIData units\fR \v'2p'
.sp 9p
.RT
.LP
TPDU
Transport Protocol Data Unit
.LP
TSDU
Transport Service Data Unit
.LP
NSDU
Network Service Data Unit
.sp 1P
.LP
4.2
\fITypes of transport protocol data unit\fR \v'2p'
.sp 9p
.RT
.LP
CR\ TPDU
Connection Request TPDU
.LP
CC\ TPDU
Connection Confirm TPDU
.LP
DR\ TPDU
Disconnect Request TPDU
.LP
DC\ TPDU
Disconnect Confirm TPDU
.LP
DT\ TPDU
Data TPDU
.LP
ED\ TPDU
Expedited Data TPDU
.LP
AK\ TPDU
Data Acknowledge TPDU
.LP
EA\ TPDU
Expedited Acknowledge TPDU
.LP
RJ\ TPDU
Reject TPDU
.LP
ER\ TPDU
Error TPDU
.sp 1P
.LP
4.3
\fITPDU fields\fR \v'2p'
.sp 9p
.RT
.LP
LI
Length Indicator (field)
.LP
CDT
Credit (field)
.LP
TSAP\(hyID
Transport Service Access Point Identifier
(field)
.LP
DST\(hyREF
Destination Reference (field)
.LP
SRC\(hyREF
Source Reference (field)
.LP
EOT
End of TSDU mark
.LP
TPDU\(hyNR
DT TPDU number (field)
.LP
ED\(hyTPDU\(hyNR
ED TPDU number (field)
.LP
YR\(hyTU\(hyNR
Sequence number response (field)
.LP
YR\(hyEDTU\(hyNR
ED TPDU number response (field)
.sp 1P
.LP
4.4
\fITimes and associated variables\fR \v'2p'
.sp 9p
.RT
.LP
T1
Local retransmission time
.LP
N
The maximum number of retransmissions
.LP
L
Time bound on reference and sequence numbers
.bp
.LP
I
Inactivity time
.LP
W
Window time
.LP
TTR
Time to try reassignment/resynchronization
.LP
TWR
Time to wait for reassignment/resynchronization
.LP
TS1
Supervisory timer 1
.LP
TS2
Supervisory timer 2
.LP
M\dL\\dR\u NSDU lifetime local\(hyto\(hyremote
.LP
M\dR\\dL\u NSDU lifetime remote\(hyto\(hylocal
.LP
E\dL\\dR\u Expected maximum transit delay
local\(hyto\(hyremote
.LP
E\dR\\dL\u Expected maximum transit delay
remote\(hyto\(hylocal
.LP
R
Persistence time
.LP
A\dL\u Local acknowledge time
.LP
A\dR\u Remote acknowledge time
.sp 1P
.LP
4.5
\fIMiscellaneous\fR \v'2p'
.sp 9p
.RT
.LP
TS\(hyuser
Transport Service user
.LP
TSAP
Transport Service Access Point
.LP
NS\(hyprovider
Network Service provider
.LP
NSAP
Network Service Access Point
.LP
QOS
Quality of service
.sp 2P
.LP
\fB5\fR \fBOverview of the\fR
\fBtransport protocol\fR
.sp 1P
.RT
.PP
\fINote\fR \ \(em\ This overview is not exhaustive and has been provided
for guidance to the reader of this Recommendation.
.RT
.sp 1P
.LP
5.1
\fIService provided by the\fR
\fItransport layer\fR
.sp 9p
.RT
.PP
The protocol specified in this Recommendation supports the
transport service defined in\ [2].
.PP
Information is transferred to and from the TS\(hyuser in the transport
service primitives listed in Table\ 1/X.224.
.RT
.sp 1P
.LP
5.2
\fIService assumed from the\fR
\fInetwork layer\fR
.sp 9p
.RT
.PP
The protocol specified in this Recommendation assumes the use of
the network services defined in\ [3].
.PP
Information is transferred to and from the NS\(hyprovider in the network
service primitives listed in Table\ 2/X.224.
.RT
.sp 2P
.LP
5.3
\fIFunctions of the\fR
\fItransport layer\fR
.sp 1P
.RT
.sp 1P
.LP
5.3.1
\fIOverview of functions\fR
.sp 9p
.RT
.PP
The functions in the transport layer are those necessary to bridge the
gap between the services available from the network layer and those to
be offered to the TS\(hyusers.
.PP
The functions in the transport layer are concerned with the
enhancement of quality of service, including aspects of cost optimization.
.PP
The functions are grouped below into those used at all times during a transport
connection and those concerned with connection establishment, data
transfer and release.
.bp
.PP
\fINote\fR \ \(em\ This Recommendation does not include the following functions
which are under consideration for inclusion in future editions of this
Recommendation:
.RT
.LP
a)
encryption;
.LP
b)
accounting mechanisms;
.LP
c)
status exchanges and monitoring of QOS;
.LP
d)
blocking;
.LP
e)
temporary release of network connections;
.LP
f
)
alternative checksum algorithm.
.LP
.ce
\fBH.T. [T1.224]\fR
.ce
TABLE 1/X.224
.ce
\fBTransport service primitives\fR
.ps 9
.vs 11
.nr VS 11
.nr PS 9
.TS
center box;
lw(84p) | lw(144p) .
.TE
.nr PS 9
.RT
.ad r
\fBTableau 1/X.224 [T1.224], p. 2\fR
.sp 1P
.RT
.ad b
.RT
.sp 1P
.LP
5.3.1.1
\fIFunctions used at all times\fR
.sp 9p
.RT
.PP
The following functions, depending on the selected class and
options, are used at all times during a transport connection:
.RT
.LP
a)
\fItransmission of TPDUs\fR \| (see \(sc\(sc\ 6.2 and 6.9);
.LP
b)
\fImultiplexing and demultiplexing\fR \| (see \(sc\ 6.15), a function
used to share a single network connection between two or more transport
connections;
.LP
c)
\fIerror detection\fR \| (see \(sc\(sc\ 6.10, 6.13 and 6.17), a function
used to detect the loss, corruption, duplication, misordering or misdelivery
of TPDUs;
.LP
d)
\fIerror recovery\fR \| (see \(sc\(sc\ 6.12, 6.14, 6.18, 6.19, 6.20,
6.21 and 6.22), a function used to recover from detected and signalled
errors.
.bp
.ce
\fBH.T. [T2.224]\fR
.ce
TABLE\ 2/X.224
.ce
\fBNetwork service primitives\fR
.ps 9
.vs 11
.nr VS 11
.nr PS 9
.TS
center box;
lw(84p) | lw(18p) | lw(102p) | lw(24p) .
.T&
lw(84p) | lw(18p) | lw(102p) | lw(24p) .
T{
Receipt confirmation selection,
Y
T}
.T&
lw(84p) | lw(18p) | lw(102p) | lw(24p) .
T{
Expedited data selection,
Y
.
.
QOS parameter set,
X
.
.
NS user data (3).
Z
N\(hyCONNECT response
X
Responding address.
X
N\(hyCONNECT confirmation
X
Receipt confirmation selection,
Y
.
.
Expedited data selection,
Y
.
.
QOS parameter set,
X
.
.
NS user data (3).
Z
N\(hyDATA request
X
NX\(hyuser data.
X
N\(hyDATA indication
X
Confirmation request.
Y
N\(hyDATA ACKNOWLEDGE request
Y
N\(hyDATA ACKNOWLEDGE indication
Y
N\(hyEXPEDITED DATA request
Y
NS user data.
Y
N\(hyEXPEDITED DATA indication
Y
N\(hyRESET request
X
Reason.
Z
N\(hyRESET indication
X
Originator,
Reason.
Z
Z
N\(hyRESET response
X
N\(hyRESET confirmation
X
N\(hyDISCONNECT request
X
Reason,
NS user data,
Responding address
Z
Z
Z
N\(hyDISCONNECT indication
X
Originator,
Reason,
NS user data
Responding address.
Z
Z
Z
Z
X:
The Transport Protocol assumes that this feature is provided by all
network service providers.
.line
Y:
The Transport Protocol assumes that this feature is provided by some
network service providers and a mechanism is provided to optionally use the
feature.
.line
Z:
The Transport Protocol does not use this parameter.
.parag
\fINote\ 1\fR
\ \(em\ The parameters listed in this table are those in the network service definition (Reference\ 3).
.parag
\fINote\ 2\fR
\ \(em\ The way the parameters are exchanged between the transport entity
and the NS\(hyprovider is a local matter.
.parag
\fINote\ 3\fR
\ \(em\ Although not used in the transport protocol \fIper se\fR
, this parameter may be used for transport protocol identification, as specified in
Annex\ B.
.parag
T}
.TE
.nr PS 9
.RT
.ad r
\fBTableau 2/X.224 [T2.224], p. 3\fR
.sp 1P
.RT
.ad b
.RT
.LP
.bp
.sp 1P
.LP
5.3.1.2
\fIConnection establishment\fR
.sp 9p
.RT
.PP
The purpose of connection establishment is to establish a transport connection
between two TS\(hyusers. The following functions of the transport layer
during this phase match the TS\(hyusers' requested quality of service with
the
services offered by the network layer:
.RT
.LP
a)
select network service which best matches the
requirement of the TS\(hyuser taking into account charges for
various services (see \(sc\ 6.5);
.LP
b)
decide whether to multiplex multiple transport connections
onto a single network connection (see \(sc\ 6.5);
.LP
c)
establish the optimum TPDU size (see \(sc\ 6.5);
.LP
d)
select the functions that will be operational upon entering
the data transfer phase (see \(sc\ 6.5);
.LP
e)
map transport addresses onto network addresses;
.LP
f
)
provide a means to distinguish between two different
transport connections (see \(sc\ 6.5);
.LP
g)
transport of TS\(hyuser data (see \(sc\ 6.5).
.sp 1P
.LP
5.3.1.3
\fIData transfer\fR
.sp 9p
.RT
.PP
The purpose of data transfer is to permit duplex transmission of
TSDUs between the two TS\(hyusers connected by the transport connection. This
purpose is achieved by means of two\(hyway simultaneous communication and
by the following functions, some of which are used or not used in accordance
with the result of the selection performed in connection establishment.
.RT
.LP
a)
\fIconcatenation and separation\fR \| (see \(sc\ 6.4), a function used
to collect several TPDUs into a single NSDU at the sending
transport entity and to separate the TPDUs at the receiving
transport entity;
.LP
b)
\fIsegmenting and reassembling\fR \| (see \(sc\ 6.3), a function used
to segment a single TSDU into multiple TPDUs at the sending
transport entity and to reassemble them into their original
format at the receiving transport entity;
.LP
c)
\fIsplitting and recombining\fR \| (see \(sc\ 6.23), a function
allowing the simultaneous use of two or more network connections
to support the same transport connection;
.LP
d)
\fIflow control\fR \| (see \(sc\ 6.16), a function used to regulate
the flow of TPDUs between two transport entities on one
transport connection;
.LP
e)
\fItransport connection identification\fR , a means to uniquely
identify a transport connection between the pair of transport
entities supporting the connection during the lifetime of the
transport connection;
.LP
f
)
\fIexpedited data\fR \| (see \(sc\ 6.11), a function used to
bypass the flow control of normal data TPDU. Expedited data TPDU
flow is controlled by separate flow control;
.LP
g)
\fITSDU delimiting\fR \| (see \(sc\ 6.3), a function used to determine
the beginning and ending of a TSDU.
.sp 1P
.LP
5.3.1.4
\fIRelease\fR
.sp 9p
.RT
.PP
The purpose of release (see \(sc\(sc\ 6.7 and 6.8) is to provide
disconnection of the transport connection, regardless of the current
activity.
.RT
.sp 2P
.LP
5.4
\fIClasses and options\fR
.sp 1P
.RT
.sp 1P
.LP
5.4.1
\fIGeneral\fR
.sp 9p
.RT
.PP
The functions of the transport layer have been organized into
classes and options.
.PP
A class defines a set of functions. Options define those functions
within a class which may or may not be used.
.PP
This Recommendation defines five classes of protocol:
.RT
.LP
a)
Class\ 0:\ Simple Class;
.LP
b)
Class\ 1:\ Basic Error Recovery Class;
.bp
.LP
c)
Class\ 2:\ Multiplexing Class;
.LP
d)
Class\ 3:\ Error Recovery and Multiplexing Class;
.LP
e)
Class\ 4:\ Error Detection and Recovery Class.
.PP
\fINote\ 1\fR \ \(em\ Transport connections of Classes 2, 3 and 4 may be
multiplexed together onto the same network connection.
.PP
\fINote\ 2\fR \ \(em\ Classes 0 to 3 do not specify mechanisms to detect
unsignalled network transmission failures.
.RT
.sp 1P
.LP
5.4.2
\fINegotiation\fR
.sp 9p
.RT
.PP
The use of classes and options is negotiated during connection
establishment. The choice made by the transport entities will depend
on:
.RT
.LP
a)
the TS\(hyusers' requirements expressed via T\(hyCONNECT service
primitives;
.LP
b)
the quality of the available network services;
.LP
c)
the user required service versus cost ratio acceptable for
the TS\(hyuser.
.sp 1P
.LP
5.4.3
\fIChoice of network connection\fR
.sp 9p
.RT
.PP
The following list classifies network services in terms of quality with
respect to error behaviour in relation to user requirements; its main
purpose is to provide a basis for the decision regarding which class of
transport connection should be used in conjunction with a given network
connection.
.RT
.LP
a)
\fIType\ A\fR \ \(em\ Network connection with acceptable residual error
rate (for example not signalled by disconnect or reset) and
acceptable rate of signalled errors.
.LP
b)
\fIType\ B\fR \ \(em\ Network connections with acceptable residual
error rate (for example not signalled by disconnect or reset)
but unacceptable rate of signalled errors.
.LP
c)
\fIType\ C\fR \ \(em\ Network connections with unacceptable residual
error rate.
.PP
It is assumed that each transport entity is aware of the quality of service
provided by particular Network connection.
.sp 1P
.LP
5.4.4
\fICharacteristics of\fR
\fIClass 0\fR
.sp 9p
.RT
.PP
Class 0 provides the simplest type of transport connection and is fully
compatible with Recommendation\ T.70\ [4].
.PP
Class 0 has been designed to be used with type\ A network
connections.
.RT
.sp 1P
.LP
5.4.5
\fICharacteristics of\fR
\fIClass 1\fR
.sp 9p
.RT
.PP
Class 1 provides a basic transport connection with minimal
overheads.
.PP
The main purpose of the class is to recover from network disconnect or reset.
.PP
Selection of this class is usually based on reliability criteria.
Class\ 1 has been designed to be used with type\ B network
connections.
.RT
.sp 2P
.LP
5.4.6
\fICharacteristics of\fR
\fIClass 2\fR
.sp 1P
.RT
.sp 1P
.LP
5.4.6.1
\fIGeneral\fR
.sp 9p
.RT
.PP
Class 2 provides a way to multiplex several transport connections onto
a single network connection. This class has been designed to be used with
type\ A network connections.
.RT
.sp 1P
.LP
5.4.6.2
\fIUse of explicit flow control\fR
.sp 9p
.RT
.PP
The objective is to provide flow control to help avoid congestion at transport\(hyconnection\(hyend\(hypoints
and on the network connection. Typical use is when traffic is heavy and
continuous, or when there is intensive
multiplexing. Use of flow control can optimize response times and resource
utilization.
.bp
.RT
.sp 1P
.LP
5.4.6.3
\fINon\(hyuse of explicit flow control\fR
.sp 9p
.RT
.PP
The objective is to provide a basic transport connection with
minimal overheads suitable when explicit disconnection of the transport
connection is desirable. The option would typically be used for unsophisticated
terminals, and when no multiplexing onto network connections is required.
Expedited data is never available.
.RT
.sp 1P
.LP
5.4.7
\fICharacteristics of\fR
\fIClass 3\fR
.sp 9p
.RT
.PP
Class 3 provides the characteristics of Class 2 plus the ability to recover
from network disconnect or reset. Selection of this class is usually
based upon reliability criteria. Class\ 3 has been designed to be used with
type\ B network connections.
.RT
.sp 1P
.LP
5.4.8
\fICharacteristics of\fR
\fIClass 4\fR
.sp 9p
.RT
.PP
Class 4 provides the characteristics of Class 3, plus the
capability to detect and recover from errors which occur as a result of
the low grade of service available from the NS\(hyprovider. The kinds of
errors to be
detected include: TPDU loss, TPDU delivery out of sequence, TPDU duplication
and TPDU corruption. These errors may affect control TPDUs as well as data
TPDUs.
.PP
This class also provides for increased throughput capability and
additional resilience against network failure.
.PP
Class 4 has been designed to be used with type C network
connections.
.RT
.sp 1P
.LP
5.5
\fIModel of the transport layer\fR
.sp 9p
.RT
.PP
A transport entity communicates with its TS\(hyusers through one or
more TSAPs by means of the service primitives as defined by the transport
service definition (Reference\ 2). Service primitives will cause or be the
result of transport protocol data unit exchanges between the peer transport
entities supporting a transport connection. These protocol exchanges are
effected using the services of the network layer as defined by the network
service definition\ [3] through one or more NSAPs.
.PP
Transport connection endpoints are identified in end systems by an
internal, implementation\(hydependent mechanism so that the TS\(hyuser and the
transport entity can refer to each transport connection (see
Figure\ 2/X.224).
.RT
.LP
.rs
.sp 20P
.ad r
\fBFigure 2/X.224, (N), p.\fR
.sp 1P
.RT
.ad b
.RT
.LP
.bp
.sp 2P
.LP
\fB6\fR \fBElements of procedure\fR
.sp 1P
.RT
.PP
This section contains elements of procedure which are used in the specification
of protocol classes in \(sc\(sc\ 7 to\ 12. These elements are not
meaningful on their own.
.PP
The procedures define the transfer of TPDUs whose structure and coding
is specified in \(sc\ 13. Transport entities shall accept and respond to
any TPDU received in a valid NSDU and may issue TPDUs initiating specific
elements of
procedure specified in this section.
.PP
\fINote\fR \ \(em\ Where network service primitives or TPDUs and parameters
used are not significant for a particular element of procedure, they have
not been included in the specification.
.RT
.sp 2P
.LP
6.1
\fIAssignment to network connection\fR
.sp 1P
.RT
.sp 1P
.LP
6.1.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The procedure is used in all classes to assign transport
connections to network connections.
.RT
.sp 1P
.LP
6.1.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
The procedure makes use of the following network service
primitives:
.RT
.LP
a)
N\(hyCONNECT;
.LP
b)
N\(hyDISCONNECT.
.sp 1P
.LP
6.1.3
\fIProcedure\fR
.sp 9p
.RT
.PP
Each transport connection shall be assigned to a network
connection. The initiator may assign the transport connection to an existing
network connection of which it is the owner or to a new network connection
(see Note\ 1) which it creates for this purpose.
.PP
The initiator shall not assign or reassign the transport connection
to an existing network connection if the protocol class(es) proposed or the
class in use for the transport connection are incompatible with the current
usage of the network connection with respect to multiplexing (see Note\ 2).
.PP
During the resynchronization (see \(sc\ 6.14) and reassignment after
failure (see \(sc\ 6.12) procedures, a transport entity may reassign a
transport
connection to another network connection joining the same NSAPs, provided
that it is the owner of the network connection and that the transport connection
is assigned to only one network connection at any given time.
.PP
During the splitting procedure (see \(sc\ 6.23), a transport entity may
assign a transport connection to any additional network connection joining
the same NSAPs, provided that it is the owner of the network connection
and that
multiplexing is possible on the network connection.
.PP
The responder becomes aware of the assignment when it
receives:
.RT
.LP
a)
a CR TPDU during the connection establishment procedure
(see \(sc\ 6.5); or
.LP
b)
an RJ TPDU or a retransmitted CR or DR TPDU during the
resynchronization (see \(sc\ 6.14) and reassignment after
failure (see \(sc\ 6.12) procedures; or
.LP
c)
any TPDU when splitting (see \(sc\ 6.23) is
used.
.PP
\fINote\ 1\fR \ \(em\ When a new network connection is created, the quality
of service requested is a local matter, although it will normally be related
to the requirements of transport connection(s) expected to be assigned
to it.
.PP
\fINote\ 2\fR \ \(em\ An existing network connection may also not be suitable
if, for example, the quality of service requested for the transport connection
cannot be attained by using or enhancing the network connection.
.PP
\fINote\ 3\fR \ \(em\ A network connection with no transport connection(s)
assigned to it, may be available after initial establishment or because
all of the transport connections previously assigned to it have been released.
It is suggested that only the owner of such a network connection should
release it. Furthermore, it is suggested that it not be released immediately
after the transmission of the final TPDU of a transport connection \(em\
either a DR\ TPDU in response to a CR\ TPDU or a DC\ TPDU in response to
a DR\ TPDU. An appropriate
delay will allow the TPDU concerned to reach the other transport entity,
allowing the freeing of any resources associated with the transport connection
concerned.
.bp
.PP
\fINote\ 4\fR \ \(em\ After the failure of a network connection, transport
connections which were previously multiplexed together may be assigned to
different network connections, and vice versa.
.PP
\fINote\ 5\fR \ \(em\ The transport protocol identification procedures
specified in Annex\ B may need to be considered in conjunction with this
procedure.
.RT
.sp 2P
.LP
6.2
\fITransport protocol data unit (TPDU) transfer\fR
.sp 1P
.RT
.sp 1P
.LP
6.2.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The TPDU transfer procedure is used in all classes to convey
transport protocol data units in user data fields of network service
primitives.
.RT
.sp 1P
.LP
6.2.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
This procedure uses the following network service
primitives:
.RT
.LP
a)
N\(hyDATA;
.LP
b)
N\(hyEXPEDITED DATA.
.sp 1P
.LP
6.2.3
\fIProcedure\fR
.sp 9p
.RT
.PP
The transport protocol data units (TPDUs) defined for the protocol are
listed in \(sc\ 4.2.
.PP
When the network expedited variant has been selected for Class\ 1, the
transport entities shall transmit and receive ED and EA\ TPDUs as NS\(hyuser
data parameters of N\(hyEXPEDITED DATA primitives.
.PP
In all other cases, transport entities shall transmit and receive
TPDUs as NS\(hyuser data parameters of N\(hyDATA primitives.
.PP
When a TPDU is put into an NS\(hyuser data parameter, the significance
of the bits within an octet and the order of octets within a TPDU shall be
as defined in \(sc\ 13.2.
.PP
\fINote\ 1\fR \ \(em\ TPDUs may be concatenated (see \(sc\ 6.4).
.PP
\fINote\ 2\fR \ \(em\ The transport protocol identification procedures
specified in Annex\ B may need to be considered in conjunction with this
procedure.
.RT
.sp 2P
.LP
6.3
\fISegmenting and reassembling\fR
.sp 1P
.RT
.sp 1P
.LP
6.3.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The segmenting and reassembling procedure is used in all classes
to map TSDUs onto TPDUs.
.RT
.sp 1P
.LP
6.3.2
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure makes use of the following TPDU and
parameter:
.RT
.LP
DT TPDU:
.LP
\(em
End of TSDU.
.sp 1P
.LP
6.3.3
\fIProcedure\fR
.sp 9p
.RT
.PP
A transport entity shall map a TSDU on to an ordered sequence of
one or more DT\ TPDUs. This sequence shall not be interrupted by other
DT\ TPDUs on the same transport connection.
.PP
All DT TPDUs except the last DT TPDU in a sequence greater than one
shall have a length of data greater than\ zero.
.PP
\fINote\ 1\fR \ \(em\ The EOT of a DT TPDU indicates whether or not there are
subsequent DT TPDUs in the sequence.
.PP
\fINote\ 2\fR \ \(em\ There is no requirement that the DT TPDUs shall be
of the maximum length selected during connection establishment.
.bp
.RT
.sp 2P
.LP
6.4
\fIConcatenation and separation\fR
.sp 1P
.RT
.sp 1P
.LP
6.4.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The procedure for concatenation and separation is used in
Classes\ 1, 2, 3 and\ 4 to convey multiple TPDUs in one\ NSDU.
.RT
.sp 1P
.LP
6.4.2
\fIProcedure\fR
.sp 9p
.RT
.PP
A transport entity may concatenate TPDUs from the same or different transport
connections while maintaining the order of TPDUs for a given
transport connection compatible with the protocol operation.
.PP
A valid set of concatenated TPDUs may contain:
.RT
.LP
a)
any number of TPDUs from the following list: AK, EA, RJ,
ER, DC\ TPDUs provided that these TPDUs come from different
transport connections;
.LP
b)
no more than one TPDU from the following list: CR, DR, CC,
DT, ED\ TPDUs; if this TPDU is present, it shall be placed last
in the set of concatenated TPDUs.
.PP
A transport entity shall accept a valid set of concatenated
TPDUs.
.PP
\fINote\ 1\fR \ \(em\ The TPDUs within a concatenated set may be distinguished
by means of the length indicator parameter.
.PP
\fINote\ 2\fR \ \(em\ The end of a TPDU containing data is indicated by the
termination of the NSDU.
.PP
\fINote\ 3\fR \ \(em\ The number of concatenated TPDUs referred to in \(sc\
6.4.2\ a) is bounded by the maximum number of transport connections which
are multiplexed together, except during assignment or reassignment.
.RT
.sp 2P
.LP
6.5
\fIConnection establishment\fR
.sp 1P
.RT
.sp 1P
.LP
6.5.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The procedure for connection establishment is used in all classes to create
a new transport connection.
.RT
.sp 1P
.LP
6.5.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
The procedure uses the following network service
primitive:
.RT
.LP
N\(hyDATA.
.sp 1P
.LP
6.5.3
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure uses the following TPDUs and parameters:
.RT
.LP
a)
CR TPDU;
.LP
\(em
CDT;
.LP
\(em
DST\(hyREF (set to zero);
.LP
\(em
SRC\(hyREF;
.LP
\(em
CLASS and OPTIONS (preferred), i.e.:
.LP
i)
class,
.LP
ii)
use of extended format,
.LP
iii)
non\(hyuse of explicit flow control in Class 2;
.LP
\(em
calling TSAP\(hyID;
.LP
\(em
called TSAP\(hyID;
.LP
\(em
TPDU size (proposed);
.LP
\(em
version number;
.LP
\(em
protection parameter;
.LP
\(em
checksum;
.LP
\(em
additional option selection (preferred), i.e.:
.LP
i)
use of network expedited in Class 1,
.LP
ii)
use of receipt confirmation in Class 1,
.LP
iii)
non\(hyuse of checksums in Class 4,
.LP
iv)
use of transport expedited data transfer
service;
.bp
.LP
\(em
alternative protocol class(es);
.LP
\(em
acknowledge time;
.LP
\(em
throughput (proposed);
.LP
\(em
residual error rate (proposed);
.LP
\(em
priority (proposed);
.LP
\(em
transit delay (proposed);
.LP
\(em
reassignment time;
.LP
\(em
user data.
.LP
b)
CC TPDU;
.LP
\(em
CDT;
.LP
\(em
DST\(hyREF;
.LP
\(em
SRC\(hyREF;
.LP
\(em
CLASS and OPTIONS (selected);
.LP
\(em
calling TSAP\(hyID;
.LP
\(em
called TSAP\(hyID;
.LP
\(em
TPDU size (selected);
.LP
\(em
protection parameter;
.LP
\(em
checksum;
.LP
\(em
additional option selection (selected);
.LP
\(em
acknowledge time;
.LP
\(em
throughput (selected);
.LP
\(em
residual error rate (selected);
.LP
\(em
priority (selected);
.LP
\(em
transit delay (selected);
.LP
\(em
user data.
.sp 1P
.LP
6.5.4
\fIProcedure\fR
.sp 9p
.RT
.PP
A transport connection is established by means of one transport
entity (the \fIinitiator\fR ) transmitting a CR\ TPDU to the other transport
entity (the \fIresponder\fR ), which replies with a CC\ TPDU. Before sending
the CR\ TPDU,
the initiator assigns the transport connection being created to one (or
more if the splitting procedure is being used) network connection(s). It is
this set of network connections over which the TPDUs are sent.
.PP
\fINote\fR \ \(em\ Even if the initiator assigns the transport connection to
more than one network connection, all the CR TPDUs (if repeated) or DR TPDUs
with DST\(hyREF set to zero which are sent prior to the receipt of the
CC\ TPDU,
shall be sent on the same network connection, unless an N\(hyDISCONNECT
indication is received. (This is necessary because the remote entity may
not support
Class\ 4 and therefore may not recognize splitting.) If the initiator has
made other assignments, it will use them only after receipt of a Class\
4 CC\ TPDU
(see also the splitting procedure \(sc\ 6.23).
.PP
During this exchange, all information and parameters needed for the
transport entities to operate shall be exchanged or negotiated.
.PP
\fINote\ 1\fR \ \(em\ The transport protocol identification procedures
specified in Annex\ B may need to be considered in conjunction with this
procedure.
.PP
\fINote\ 2\fR \ \(em\ Except in Class 4, it is suggested that the initiator
start an optional timer TS1 at the time the CR\ TPDU is sent. This timer
should be
stopped when the connection is considered as accepted or refused or
unsuccessful. If the timer expires, the initiator should reset or disconnect
the network connection and, in Classes\ 1 and\ 3, freeze the reference (see
\(sc\ 6.18). For all other transport connection(s) multiplexed on the same
network connection, the procedures for reset or disconnect as appropriate
should be
followed.
.PP
When an unexpected duplicated CR TPDU is received (with Class 4 as
preferred class), it shall be ignored in Classes\ 0, 1, 2 and\ 3 and a CC\ TPDU
shall be returned in Class\ 4.
.PP
After receiving the CC TPDU for a class which includes the procedure for
retention until acknowledgment of TPDUs, the initiator shall acknowledge
the CC\ TPDU as defined in Table\ 5/X.224 (see \(sc\ 6.13).
.bp
.PP
When the network expedited variant of expedited data transfer (see
\(sc\ 6.11) has been agreed (possible in Class\ 1 only), the responder
shall not
send an ED\ TPDU before the CC\ TPDU is acknowledged.
.PP
The following information is exchanged:
.RT
.LP
a)
\fIreferences\fR \ \(em\ Each transport entity chooses a reference to
be used by the peer entity which is 16\ bits long and which is
arbitrary except for the following restrictions:
.LP
1)
it shall not already be in use or frozen (see
\(sc\ 6.18),
.LP
2)
it shall not be zero.
.LP
This mechanism is symmetrical and provides identification of
the transport connection independent of the network connection.
The range of references used for transport connections, in a
given transport entity, is a local matter.
.LP
b)
\fIcalling and called TSAPs\(hyIDs\fR \| (optional)\ \(em\ Indicate the
calling and called transport service access points. When either
network address unambiguously defines the transport address,
this information may be omitted.
.LP
c)
\fIinitial credit\fR \ \(em\ Only relevant for classes which include
the explicit flow control function.
.LP
d)
\fIuser data\fR \ \(em\ Not available if Class 0 is the preferred
class (see Note). Up to 32\ octets in other classes.
.LP
\fINote\fR \ \(em\ If Class 0 is a valid response according to
Table\ 3/X.224, inclusion of user data in the CR\ TPDU may cause
the responding entity to refuse the connection (e.g.\ if it only
supports Class\ 0).
.LP
e)
\fIacknowledgment time\fR \ \(em\ Only in Class 4.
.LP
f
)
\fIchecksum parameter\fR \ \(em\ Only in Class 4.
.LP
g)
\fIprotection parameter\fR \ \(em\ This parameter and its semantics
are user defined.
.ce
\fBH.T. [T3.224]\fR
.ce
TABLE\ 3/X.224
.ce
\fBValid responses corresponding to preferred and any\fR
.ce
\fBalternative class proposed in the CR TPDU\fR
.T&
lw(30p) | lw(36p) | lw(30p) | lw(36p) | lw(30p) | lw(36p) | lw(30p) .
.TE
.nr PS 9
.RT
.ad r
\fBTable 3/X.224 [T3.224], p.\fR
.sp 1P
.RT
.ad b
.RT
.LP
.bp
.LP
The following negotiations take place:
.LP
h)
\fIprotocol class\fR \ \(em\ The initiator shall propose a preferred
class and any number of alternative classes which permit a
valid response as defined in Table\ 3/X.224. The initiator should
assume when it sends the CR\ TPDU that its preferred class will
be agreed to, and commence the procedures associated with that
class, except that if Class\ 0 or Class\ 1 is an alternative
class, multiplexing shall not commence until a CC\ TPDU selecting
the use of Classes\ 2, 3 or\ 4 has been received.
.LP
\fINote\fR \ \(em\ This means, for example, that when the preferred
class includes resynchronization (see \(sc\ 6.14), the
resynchronization will occur if a reset is signalled during
connection establishment.
.LP
The responder shall select one class defined in
Table\ 3/X.224 as a valid response corresponding to the preferred
class and to the class(es), if any, contained in the alternative
class parameter of the CR\ TPDU. It shall indicate the selected
class in the CC\ TPDU and shall follow the procedures for the
selected class.
.LP
If the preferred class is not selected, then on receipt of
the CC\ TPDU, the initiator shall adjust its operation according
to the procedures of the selected class.
.LP
i)
\fITPDU size\fR \ \(em\ The initiator may propose a maximum size for
TPDUs, and the responder may accept this value or respond with
any value between\ 128 and the proposed value in the set of
values available for the class (see \(sc\ 13.3.4\ b)).
.LP
\fINote\fR \ \(em\ The length of the CR TPDU does not exceed 128
octets (see \(sc\ 13.3).
.LP
j)
\fInormal or extended format\fR \ \(em\ Either normal or extended is
available. When extended is used, this applies to CDT, TPDU\(hyNR,
ED\(hyTPDU\(hyNR, YR\(hyTU\(hyNR and YR\(hyEDTU\(hyNR parameters.
.LP
k)
\fIchecksum selection\fR \ \(em\ This defines whether or not TPDUs of
the connection are to include a checksum.
.LP
l)
\fIquality of service parameters\fR \ \(em\ This defines the
throughput, transit delay, priority, and residual error
rate.
.LP
\fINote\fR \ \(em\ The transport service defines transit delay as
requiring a previously stated average TSDU size as a basis for
any specification. The protocol, as specified in \(sc\ 13.3.4,\ l),
uses a value of 128\ octets. Conversion to and from
specifications based upon some other value is a local
matter.
.LP
m)
\fIthe non\(hyuse of explicit flow control\fR in Class 2.
.LP
\fB\fB\fB\fB\fB\fB\fB\fB\fB
n)
\fIthe use of network receipt confirmation and network\fR \fIexpedited\fR
\| when Class\ 1 is to be used.
.LP
o)
\fIthe use of expedited data transfer service\fR \ \(em\ This allows
both TS\(hyusers to negotiate the use or non\(hyuse of the expedited
data transport service as defined in the transport service
definition [2].
.LP
The following information is set only in the CR TPDU:
.LP
p)
\fIversion number\fR \ \(em\ This defines the version of the transport
protocol used for this connection.
.LP
q)
\fIreassignment time parameter\fR \ \(em\ This indicates the time for
which the initiator will persist in following the
reassignment after failure procedure.
.PP
The negotiation rules for the options are such that the initiator may propose
either to use or not to use the option. The responder may either
accept the proposed choice or select an alternative choice as defined in
Table\ 4/X.224.
.PP
When a parameter [which is valid for the proposed class(es)] is
absent and a default value is defined in this Recommendation, this
is equivalent to the presence of the parameter with the default value.
.PP
In Class 2, whenever a transport entity requests or agrees to the
transport expedited data transfer service or to the use of extended formats,
it shall request or agree (respectively) to the use of explicit flow
control.
.RT
.sp 2P
.LP
6.6
\fIConnection refusal\fR
.sp 1P
.RT
.sp 1P
.LP
6.6.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The connection refusal procedure is used in all classes when a
transport entity refuses a transport connection in response to a
CR\ TPDU.
.bp
.RT
.ce
\fBH.T. [T4.224]\fR
.ce
TABLE\ 4/X.224
.ce
\fBNegotiation of options during connection establishment\fR
.ps 9
.vs 11
.nr VS 11
.nr PS 9
.TS
center box;
lw(96p) | lw(48p) | lw(48p) .
.TE
.nr PS 9
.RT
.ad r
\fBTableau 4/X.224 [T4.224], p. 6\fR
.sp 1P
.RT
.ad b
.RT
.sp 1P
.LP
6.6.2
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure makes use of the following TPDUs and
parameters:
.RT
.LP
a)
DR TPDU:
.LP
\(em
SRC\(hyREF;
.LP
\(em
reason;
.LP
\(em
user data.
.LP
b)
ER TPDU:
.LP
\(em
reject cause;
.LP
\(em
invalid TPDU.
.sp 1P
.LP
6.6.3
\fIProcedure\fR
.sp 9p
.RT
.PP
If a transport connection cannot be accepted, the responder shall respond
to the CR\ TPDU with a DR\ TPDU. The reason shall indicate why the
connection was not accepted. The source reference field in the DR\ TPDU
shall be set to zero to indicate an unassigned reference.
.PP
If a DR TPDU is received, the initiator shall regard the connection as
released.
.PP
The responder shall respond to an invalid CR TPDU by sending an ER or DR\
TPDU. If an ER\ TPDU is received in response to a CR\ TPDU, the initiator
shall regard the connection as released.
.PP
\fINote\ 1\fR \ \(em\ When the invalid CR TPDU can be identified as having
Class\ 0 as the preferred class, it is suggested to respond with an ER\
TPDU. For all other invalid CR\ TPDUs, either an ER\ TPDU or DR\ TPDU may
be sent.
.PP
\fINote\ 2\fR \ \(em\ If the optional supervisory timer TS1 has been set for
this connection, then the initiator should stop the timer on receipt of
the DR or ER\ TPDU.
.bp
.RT
.sp 2P
.LP
6.7
\fINormal release\fR
.sp 1P
.RT
.sp 1P
.LP
6.7.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The release procedure is used by a transport entity in order to
terminate a transport connection. The implicit variant is used only in
Class\ 0. The explicit variant is used in Classes\ 1, 2, 3 and\ 4.
.PP
\fINote\ 1\fR \ \(em\ When the implicit variant is used (i.e. in Class\ 0), the
lifetime of the transport connection is directly correlated with the lifetime
of the network connection.
.PP
\fINote\ 2\fR \ \(em\ The use of the explicit variant of the release procedure
enables the transport connection to be released independently of the underlying
network connection.
.RT
.sp 1P
.LP
6.7.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
The procedure makes use of the following network service
primitives:
.RT
.LP
a)
N\(hyDISCONNECT (implicit variant only),
.LP
b)
N\(hyDATA.
.sp 1P
.LP
6.7.3
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure makes use of the following TPDUs and parameters:
.RT
.LP
a)
DR TPDU:
.LP
\(em
reason;
.LP
\(em
user data;
.LP
\(em
SRC\(hyREF;
.LP
\(em
DST\(hyREF.
.LP
b)
DC TPDU.
.sp 1P
.LP
6.7.4
\fIProcedure for implicit variant\fR
.sp 9p
.RT
.PP
In the implicit variant, either transport entity disconnects a
transport connection by disconnecting the network connection to which it is
assigned. When a transport entity receives an N\(hyDISCONNECT indication, this
should be considered as the release of the transport connection.
.RT
.sp 1P
.LP
6.7.5
\fIProcedure for explicit variant\fR
.sp 9p
.RT
.PP
When the release of a transport connection is to be initiated, a
transport entity:
.RT
.LP
a)
if it has previously sent or received a CC TPDU (see
Note\ 1), shall:
.LP
1)
send a DR TPDU;
.LP
2)
discard all subsequently received TPDUs other than a
DR or DC\ TPDU;
.LP
3)
consider the transport connection released on receipt
of a DR or DC\ TPDU;
.LP
b)
if a) is not applicable, it shall:
.LP
1)
for classes other than Class\ 4, wait for
acknowledgment of the outstanding CR\ TPDU; if it receives a
CC\ TPDU, it shall follow the procedure in \(sc\ 6.7.5\ a);
.LP
2)
for Class 4, either send a DR\ TPDU with a zero value
in the DST\(hyREF field, or follow the procedure in
\(sc\ 6.7.5\ b)\ 1).
.LP
In the former case, receipt of a CC TPDU specifying
Class 4 will be ignored. Receipt of a CC\ TPDU with another class will
be processed as follows: if the class is\ 0, the network
connection shall be disconnected; otherwise, a DR\ TPDU with
the DST\(hyREF field set to the value of the SRC\(hyREF field of the
received CC\ TPDU shall be sent and the release procedure of
the class is continued.
.bp
.LP
A transport entity that receives a DR TPDU shall:
.LP
c)
if it has previously sent a DR TPDU for the same
transport connection, consider the transport connection
released;
.LP
d)
if it has previously sent a CR TPDU that has not been
acknowledged by a CC\ TPDU, consider the connection
refused (see \(sc\ 6.6);
.LP
If the SRC\(hyREF is not zero, a DC\ TPDU shall be sent
using the SRC\(hyREF as the DST\(hyREF.
.LP
\fINote\fR \ \(em\ In this case, the DR TPDU has been associated
regardless of its SRC\(hyREF field (see \(sc\ 6.9.4).
.LP
e)
if c) and d) are not applicable, send a DC TPDU and consider
the transport connection released. If the received DR has the
DST\(hyREF field set to zero, then a DC with SRC\(hyREF set to zero
shall be sent, regardless of the local reference. If the entity
receiving such a DR\ TPDU has previously decided to negotiate
down the class, this entity is always entitled to consider
such a DR\ TPDU as spurious. Since no association has been made,
the transport connection is not released at the responder side
but the CC\ TPDU, when sent, will be answered by a DR\ TPDU
(spurious CC\ TPDU).
.PP
\fINote\ 1\fR \ \(em\ This requirement ensures that the transport entity
is aware of the remote reference for the transport connection.
.PP
\fINote\ 2\fR \ \(em\ When the transport connection is considered as released,
the local reference is either available for re\(hyuse or is frozen
(see
\(sc\ 6.18).
.PP
\fINote\ 3\fR \ \(em\ After the release of a transport connection, the network
connection can be released or retained to enable its re\(hyuse for the
assignment of other transport connections (see \(sc\ 6.1).
.PP
\fINote\ 4\fR \ \(em\ Except in Class 4, it is suggested that if a transport
entity does not receive acknowledgment of a DR\ TPDU within time TS2, it
should either reset or disconnect the network connection, and freeze the
reference
when appropriate (see \(sc\ 6.18). For all other transport connection(s)
multiplexed on the same network connection, the procedures for reset or
disconnect as appropriate should be followed.
.PP
\fINote\ 5\fR \ \(em\ When a transport entity is waiting for a CC TPDU before
sending a DR\ TPDU and the network connection is reset or released, it should
consider the transport connection released and, in classes other than Classes\
0 and\ 2, freeze the reference (see \(sc\ 6.18).
.RT
.sp 2P
.LP
6.8
\fIError release\fR
.sp 1P
.RT
.sp 1P
.LP
6.8.1
\fIPurpose\fR
.sp 9p
.RT
.PP
This procedure is used only in Classes\ 0 and\ 2 to release a
transport connection on the receipt of a N\(hyDISCONNECT or N\(hyRESET
indication.
.RT
.sp 1P
.LP
6.8.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
The procedure makes use of the following service
primitives:
.RT
.LP
a)
N\(hyDISCONNECT indication;
.LP
b)
N\(hyRESET indication.
.sp 1P
.LP
6.8.3
\fIProcedure\fR
.sp 9p
.RT
.PP
When, on the network connection to which a transport connection is assigned,
an N\(hyDISCONNECT or N\(hyRESET indication is received, both transport
entities shall consider that the transport connection is released, and so
inform the TS\(hyusers.
.PP
\fINote\fR \ \(em\ In other classes, since error recovery is used, the
receipt of an N\(hyRESET indication or N\(hyDISCONNECT indication will
result in the
invocation of the error recovery procedure.
.RT
.sp 2P
.LP
6.9
\fIAssociation of\fR
\fITPDUs with transport connections\fR
.sp 1P
.RT
.sp 1P
.LP
6.9.1
\fIPurpose\fR
.sp 9p
.RT
.PP
This procedure is used in all classes to interpret a received NSDU as TPDU(s)
and, if possible, to associate each such TPDU with a transport
connection.
.bp
.RT
.sp 1P
.LP
6.9.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
This procedure makes use of the following network service
primitives:
.RT
.LP
a)
N\(hyDATA indication;
.LP
b)
N\(hyEXPEDITED DATA indication.
.sp 1P
.LP
6.9.3
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
This procedure makes use of the following TPDUs and
parameters:
.RT
.LP
a)
in any TPDU except: CR TPDU; DT TPDU in Classes\ 0 or\ 1;
AK TPDU in Class\ 1:
.LP
\(em
DST\(hyREF.
.LP
b)
CR, CC, DR and DC TPDUs:
.LP
\(em
SRC\(hyREF.
.LP
c)
DT TPDU in Classes 0 or 1 and AK TPDU in
Class 1.
.sp 2P
.LP
6.9.4
\fIProcedures\fR
.sp 1P
.RT
.sp 1P
.LP
6.9.4.1
\fIIdentification of TPDUs\fR
.sp 9p
.RT
.PP
If the received NSDU or expedited NSDU cannot be decoded (i.e.\ does not
contain one or more correct TPDUs) or is corrupted (i.e.\ contains a TPDU
with a wrong checksum) then the transport entity shall:
.RT
.LP
a)
if the network connection on which the error is detected has
a Class\ 0 or Class\ 1 transport connection assigned to it, then
treat as a protocol error (see \(sc\ 6.22) for that transport
connection;
.LP
b)
otherwise:
.LP
1)
if the NSDU can be decoded but contains corrupted
TPDUs, discard the TPDUs (Class\ 4 only) and optionally
apply \(sc\ 6.9.4.1\ b)\ 2);
.LP
2)
if the NSDU cannot be decoded, issue an N\(hyRESET (or
N\(hyDISCONNECT) request for the network connection and
for all of the transport connections assigned to this
network connection (if any), apply the procedures
defined for handling of network signalled reset or
disconnect.
.LP
If the NSDU can be decoded and is not corrupted, the transport
entity shall:
.LP
c)
if the network connection on which the NSDU was received has
a Class\ 0 transport connection assigned to it, then consider
the NSDU as forming one TPDU and associate the TPDU with the
transport connection (see \(sc\ 6.9.4.2);
.LP
d)
otherwise, invoke the separation procedures and for each of
the individual TPDUs in the order in which they appear in the
NSDU apply the procedure defined in \(sc\ 6.9.4.2.
.sp 1P
.LP
6.9.4.2
\fIAssociation of individual TPDUs\fR
.sp 9p
.RT
.PP
If the received TPDU is a CR TPDU, then, if it is a duplicate as
recognized by using the NSAPs of the network connection, and the SRC\(hyREF
parameter, then it is associated with the transport connection created
by the original copy of the CR\ TPDU; otherwise, it is processed as requesting
the
creation of a new transport connection.
.PP
If the received TPDU is a DT TPDU and the network connection has a
Class\ 0 or Class\ 1 transport connection assigned to it, or an AK\ TPDU
where a Class\ 1 transport connection is assigned, then the TPDU is associated
with the transport connection.
.PP
Otherwise, the DST\(hyREF parameter of the TPDU is used to identify the
transport connection. The following cases are distinguished:
.RT
.LP
a)
If the DST\(hyREF is not allocated to a transport connection,
the transport entity shall respond on the same network
connection with a DR\ TPDU if the TPDU is a CC\ TPDU, with a
DC\ TPDU if the TPDU is a DR\ TPDU and shall discard the TPDU
if neither a DR\ TPDU nor CC\ TPDU. No association with a
transport connection is made.
.LP
\fINote\fR \ \(em\ If the DR TPDU is carrying an SRC\(hyREF field set to
zero, then no DC TPDU shall be sent.
.bp
.LP
b)
If the DST\(hyREF is allocated to a connection, but the TPDU is
received on a network connection to which the connection has not
been assigned, then there are three cases:
.LP
1)
if the transport connection is of Class\ 4 and if the
TPDU is received on a network connection with the same
pair of NSAPs as that of the CR\ TPDU, then the TPDU is
associated with this transport connection and considered
as performing assignment;
.LP
2)
if the transport connection is not assigned to any
network connection (waiting for reassignment after
failure) and if the TPDU is received on a network
connection with the same pair of NSAPs as that of the
CR\ TPDU, then the association with that transport
connection is made except in the case of DC, DR and
CC\ TPDUs which are respectively described in \(sc\ 6.9.4.2\ c),
d) and\ e);
.LP
3)
otherwise, the TPDU is considered as having a DST\(hyREF
not allocated to a transport connection [case\ a)].
.LP
c)
If the TPDU is a DC TPDU, then it is associated with the
transport connection to which the DST\(hyREF is allocated, unless
the SRC\(hyREF is not the expected one, in which case the DC\ TPDU
is discarded.
.LP
d)
If the TPDU is a DR TPDU then there are four cases:
.LP
1)
if the SRC\(hyREF is not as expected, then a DC TPDU with
a DST\(hyREF equal to the SRC\(hyREF of the received DR\ TPDU is
sent back and no association is made;
.LP
2)
if a CR TPDU is unacknowledged, then the DR TPDU is
associated with the transport connection, regardless of
the value of its SRC\(hyREF\ parameter;
.LP
3)
if the transport entity implements Class 4 and if the
DST\(hyREF is zero and there is an unacknowledged CC\ TPDU
or T\(hyCONNECT response is awaited, then the DR\ TPDU shall
be associated with the transport connection holding the
SRC\(hyREF as the remote reference;
.LP
4)
otherwise, the DR TPDU is associated with the
transport connection identified by the DST\(hyREF
parameter.
.LP
e)
If the TPDU is a CC TPDU whose DST\(hyREF parameter identifies
an open connection (one for which a CC TPDU has been previously
received), and the SRC\(hyREF in the CC\ TPDU does not match the
remote reference, then a DR\ TPDU is sent back with DST\(hyREF equal
to the SRC\(hyREF of the received CC\ TPDU and no association is
made.
.LP
f
)
If none of the above cases apply, then the TPDU is
associated with the transport connection identified by the
DST\(hyREF parameter.
.sp 2P
.LP
6.10
\fIData TPDU numbering\fR
.sp 1P
.RT
.sp 1P
.LP
6.10.1
\fIPurpose\fR
.sp 9p
.RT
.PP
Data TPDU numbering is used in Classes\ 1, 2 (except when the
non\(hyuse of explicit flow control option is selected), 3 and\ 4. Its purpose
is to enable the use of recovery, flow control and resequencing
functions.
.RT
.sp 1P
.LP
6.10.2
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
This procedure makes use of the following TPDU and
parameter:
.RT
.LP
DT TPDU;
.LP
\(em
TPDU\(hyNR.
.sp 1P
.LP
6.10.3
\fIProcedure\fR
.sp 9p
.RT
.PP
A transport entity shall allocate the sequence number zero to the TPDU\(hyNR
of the first DT TPDU which it transmits for a transport connection. For
subsequent DT\ TPDUs sent on the same transport connection, the transport
entity shall allocate a sequence number one greater than the previous one.
.PP
When a DT TPDU is retransmitted, the TPDU\(hyNR parameter shall have the
same value as in the first transmission of that DT\ TPDU.
.bp
.PP
Modulo 2\u7\d arithmetic shall be used when normal formats have been
selected and modulo\ 2\u3\d\u1\d arithmetic shall be used when extended formats
have been selected. In this Recommendation, the relationships \*Qgreater
than\*U
and \*Qless than\*U apply to a set of contiguous TPDU numbers whose range
is less than the modulus and whose starting and finishing numbers are known.
The term \*Qless than\*U means \*Qoccurring sooner in the window sequence\*U
and the term
\*Qgreater than\*U means \*Qoccurring later in the window sequence\*U.
.RT
.sp 2P
.LP
6.11
\fIExpedited data transfer\fR
.sp 1P
.RT
.sp 1P
.LP
6.11.1
\fIPurpose\fR
.sp 9p
.RT
.PP
Expedited data transfer procedures are selected during connection establishment.
The network normal data variant may be used in Classes\ 1, 2, 3 and\ 4.
The network expedited variant is only used in Class\ 1.
.RT
.sp 1P
.LP
6.11.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
The procedure makes use of the following network service
primitives:
.RT
.LP
a)
N\(hyDATA;
.LP
b)
N\(hyEXPEDITED DATA.
.sp 1P
.LP
6.11.3
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure makes use of the following TPDUs and
parameters:
.RT
.LP
a)
ED TPDU:
.LP
\(em
ED\(hyTPDU\(hyNR.
.LP
b)
EA TPDU:
.LP
\(em
YR\(hyEDTU\(hyNR.
.sp 1P
.LP
6.11.4
\fIProcedure\fR
.sp 9p
.RT
.PP
The TS\(hyuser data parameter of each T\(hyEXPEDITED DATA request shall
be conveyed as the data field of an Expedited Data (ED) TPDU.
.PP
Each ED TPDU received shall be acknowledged by an Expedited
Acknowledge (EA) TPDU.
.PP
No more than one ED TPDU shall remain unacknowledged at any time for each
direction of a transport connection.
.PP
An ED TPDU with a zero length data field shall be treated as a
protocol error.
.PP
\fINote\ 1\fR \ \(em\ The network normal data variant is used, except when the
network expedited variant (available in Class\ 1 only), has been agreed, in
which case ED and EA\ TPDUs are conveyed in the data fields of N\(hyEXPEDITED
DATA primitives (see \(sc\ 6.2.3).
.PP
\fINote\ 2\fR \ \(em\ No TPDUs can be transmitted using network expedited
until the CC\ TPDU becomes acknowledged, to prevent the network expedited
from overtaking the CC\ TPDU.
.RT
.sp 2P
.LP
6.12
\fIReassignment after failure\fR
.sp 1P
.RT
.sp 1P
.LP
6.12.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The reassignment after failure procedure is used in Classes\ 1 and\ 3 to
commence recovery from an NS\(hyprovider signalled disconnect.
.RT
.sp 1P
.LP
6.12.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
The procedure uses the following network service
primitive:
.RT
.LP
N\(hyDISCONNECT indication.
.bp
.sp 1P
.LP
6.12.3
\fIProcedure\fR
.sp 9p
.RT
.PP
When an N\(hyDISCONNECT indication is received for the network
connection to which a transport connection is assigned, the initiator shall
apply one of the following alternatives:
.RT
.LP
a)
if the TTR timer has not already run out and no DR TPDU is
retained, then:
.LP
1)
assign the transport connection to a different network
connection (see \(sc\ 6.1) and start its TTR timer if not
already started;
.LP
2)
while waiting for the completion of assignment if:
.LP
\(em
an N\(hyDISCONNECT indication is received, repeat
the procedure from \(sc\ 6.12.3\ a),
.LP
\(em
the TTR timer expires, begin procedure
\(sc\ 6.12.3\ b);
.LP
3)
when reassignment is completed, begin
resynchronization (see \(sc\ 6.14) and:
.LP
\(em
if a valid TPDU is received as the result of
the resynchronization, stop the TTR timer, or
.LP
\(em
if TTR runs out, wait for the next event, or
.LP
\(em
if an N\(hyDISCONNECT indication is received, then
begin either procedure \(sc\ 6.12.3\ a) or \(sc\ 6.12.3\ b)
depending on the TTR timer.
.LP
\fINote\fR \ \(em\ After TTR expires and while waiting for
the next event, it is suggested that the initiator set a
timer with a value equal to TWR. If this timer expires
before the next event, the initiator should begin the procedure
in \(sc\ 6.12.3\ b);
.LP
b)
if the TTR timer has run out, consider the transport
connection as released and freeze the reference
(see \(sc\ 6.18);
.LP
c)
if a DR TPDU is retained and the TTR timer has not run out,
then follow the actions in either \(sc\ 6.12.3\ a) or
\(sc\ 6.12.3\ b).
.PP
The responder shall start its TWR timer if not already started.
The arrival of the first TPDU related to the transport connection (because
of resynchronization by the initiator) completes the reassignment after
failure procedure. The TWR timer is stopped and the responder shall continue
with resynchronization (see \(sc\ 6.14). If reassignment does not take
place within this time, the transport connection is considered released
and the reference is frozen (see \(sc\ 6.18).
.PP
If reassignment occurs successfully, both transport entities shall
continue with resynchronization.
.PP
\fINote\fR \ \(em\ The transport protocol identification procedures specified
in Annex\ B may need to be considered in conjunction with this procedure.
.RT
.sp 1P
.LP
6.12.4
\fITimers\fR
.sp 9p
.RT
.PP
The reassignment after failure procedure uses two
timers:
.RT
.LP
a)
TTR, the time to try reassignment/resynchronization timer;
.LP
b)
TWR, the time to wait for reassignment/resynchronization
timer.
.PP
The TWR timer is used by the initiator. Its value shall not
exceed two minutes minus the sum of the maximum disconnect propagation delay
and the maximum transit delay of the network connections (see Note\ 1). The
value for the TTR timer may be indicated in the CR\ TPDU.
.PP
The TWR timer is used by the responder. If the reassignment time
parameter is present in the CR\ TPDU, the TWR timer value shall be greater
than the sum of the TTR timer plus the maximum disconnect propagation delay
plus the maximum transit delay of the network connections.
.PP
If the reassignment time parameter is not present in the CR TPDU, a
default value of 2\ minutes shall be used for the TWR timer.
.PP
\fINote\ 1\fR \ \(em\ Provided that the required quality of service is
met, TTR may be set to zero (i.e.,\ no reassignment), for example if the
rate of
NS\(hyprovider generated disconnects is very low.
.PP
\fINote\ 2\fR \ \(em\ Inclusion of the reassignment time parameter in the
CR TPDU allows the responder to use a TWR value of less than 2\ minutes.
.bp
.PP
\fINote\ 3\fR \ \(em\ If the optional TS1 and TS2 timers are used, it is
suggested:
.RT
.LP
a)
to stop TS1 or TS2 if running when TTR or TWR is started;
.LP
b)
to restart TS1 or TS2 if necessary when the corresponding
TPDU (CR\ TPDU or DR\ TPDU respectively) is repeated;
.LP
c)
to select for TS1 and TS2 values greater than
TTR.
.sp 2P
.LP
6.13
\fIRetention until acknowledgment of TPDUs\fR
.sp 1P
.RT
.sp 1P
.LP
6.13.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The retention until acknowledgment of TPDUs procedure is used in
Classes\ 1, 3 and\ 4 to enable and minimize retransmission after possible loss
of TPDUs.
.PP
The confirmation of receipt variant is used only in Class\ 1 when it
has been agreed during connection establishment (see Note).
.PP
The AK variant is used in Classes\ 3 and\ 4 and also in Class\ 1 when the
confirmation of receipt variant has not been agreed during connection
establishment.
.PP
\fINote\fR \ \(em\ Use of confirmation of receipt variant depends on the
availability of the network layer receipt confirmation service and the
expected cost reduction.
.RT
.sp 1P
.LP
6.13.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
The procedure uses the following network service
primitives:
.RT
.LP
a)
N\(hyDATA;
.LP
b)
N\(hyDATA ACKNOWLEDGE.
.sp 1P
.LP
6.13.3
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure uses the following TPDUs and parameters:
.RT
.LP
a)
CR, CC, DR and DC TPDUs.
.LP
b)
RJ and AK TPDUs:
.LP
\(em
YR\(hyTU\(hyNR.
.LP
c)
DT TPDU:
.LP
\(em
TPDU\(hyNR.
.LP
d)
ED TPDU:
.LP
\(em
ED\(hyTPDU\(hyNR.
.LP
e)
EA TPDU:
.LP
\(em
YR\(hyEDTU\(hyNR.
.sp 1P
.LP
6.13.4
\fIProcedure\fR
.sp 9p
.RT
.PP
Copies of the following TPDUs shall be retained upon transmission to permit
their later retransmission:
.RT
.sp 1P
.ce 1000
CR, CC, DR, DT and ED TPDUs
.ce 0
.sp 1P
.LP
except that if a DR TPDU is sent in response to a CR TPDU, there is no
need to retain a copy of the DR\ TPDU.
.PP
A copy of each of these TPDUs shall be retained
until:
.LP
a)
it is acknowledged, as specified in Table\ 5/X.224; or
.LP
b)
the transport connection is released.
.PP
In the confirmation of receipt variant, applicable only in
Class\ 1, transport entities shall:
.LP
a)
set the confirmation request parameter only if the data
parameter contains a CC or DT\ TPDU (see Notes\ 1 and\ 2); and
.LP
b)
issue an N\(hyDATA ACKNOWLEDGE request when it receives an
N\(hyDATA indication with the confirmation request parameter set.
.bp
.PP
\fINote\ 1\fR \ \(em\ It is a local matter for each transport entity to decide
which N\(hyDATA requests should have the confirmation request parameter
set. This decision will normally be related to the amount of storage available
for
retained copies of the DT\ TPDUs.
.PP
\fINote\ 2\fR \ \(em\ Use of the confirmation request parameter may affect the
quality of network service.
.RT
.ce
\fBH.T. [T5.224]\fR
.ce
TABLE\ 5/X.224
.ce
\fBAcknowledgement of TPDUs\fR
.ps 9
.vs 11
.nr VS 11
.nr PS 9
.TS
center box;
lw(36p) | lw(72p) | lw(120p) .
.TE
.nr PS 9
.RT
.ad r
\fBTable 5/X.224 [T5.224], p.\fR
.sp 1P
.RT
.ad b
.RT
.sp 2P
.LP
6.14
\fIResynchronization\fR
.sp 1P
.RT
.sp 1P
.LP
6.14.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The resynchronization procedures are used in Classes\ 1 and 3 to
restore the transport connection to normal after a reset or during reassignment
after failure according to \(sc\ 6.12.
.RT
.sp 1P
.LP
6.14.2
\fINetwork service primitives\fR
.sp 9p
.RT
.PP
The procedure makes use of the following network service
primitive:
.RT
.LP
N\(hyRESET indication.
.sp 1P
.LP
6.14.3
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure uses the following TPDUs and parameters:
.RT
.LP
a)
CR, DR, CC and DC TPDUs.
.LP
b)
RJ TPDU:
.LP
\(em
YR\(hyTU\(hyNR.
.LP
c)
DT TPDU:
.LP
\(em
TPDU\(hyNR.
.LP
d)
ED TPDU:
.LP
\(em
ED\(hyTPDU\(hyNR.
.LP
e)
EA TPDU:
.LP
\(em
YR\(hyEDTU\(hyNR.
.bp
.sp 1P
.LP
6.14.4
\fIProcedure\fR
.sp 9p
.RT
.PP
A transport entity which is notified of the occurrence of an
N\(hyRESET or which is performing reassignment after failure according
to \(sc\ 6.12 shall carry out the active resynchronization procedures (see
\(sc\ 6.14.4.1)
\fIunless\fR any of the following hold:
.RT
.LP
a)
the transport entity is the responder. In this case, the
passive resynchronization procedure shall be carried out (see
\(sc\ 6.14.4.2);
.LP
b)
the transport entity has elected not to reassign (see
\(sc\ 6.12.3\ c)). In this case, no resynchronizaion takes
place.
.sp 1P
.LP
6.14.4.1
\fIActive resynchronization procedures\fR
.sp 9p
.RT
.PP
The transport entity shall carry out one of the following
actions:
.RT
.LP
a)
if the TTR timer has been previously started and has run
out (i.e.\ no valid TPDU has been received), the transport
connection is considered as released and the reference is
frozen (see \(sc\ 6.18);
.LP
b)
otherwise, the TTR timer shall be started (unless it is
already running) and the first applicable one of the following
actions shall be taken:
.LP
1)
if a CR TPDU is unacknowledged, then the transport
entity shall retransmit it;
.LP
2)
if a DR TPDU is unacknowledged, then the transport
entity shall retransmit it;
.LP
3)
otherwise, the transport entity shall carry out the
data resynchronization procedures
(\(sc\ 6.14.4.3).
.LP
The TTR timer is stopped when a valid TPDU is
received.
.sp 1P
.LP
6.14.4.2
\fIPassive resynchronization procedures\fR
.sp 9p
.RT
.PP
The transport entity shall not send any TPDUs until a TPDU has been received.
The transport entity shall start its TWR timer if it was not already started
(due to a previous N\(hyDISCONNECT or N\(hyRESET indication). If the timer
runs out prior to the receipt of a valid TPDU which commences resynchronization
(i.e.\ CR or DR or ED or RJ\ TPDU), the transport connection is considered
as
released and the reference is released (see \(sc\ 6.18).
.PP
When a valid TPDU is received, the transport entity shall stop its TWR
timer and carry out the appropriate one of the following actions, depending
on the TPDU:
.RT
.LP
a)
if it is a DR TPDU, then the transport entity shall send a
DC TPDU;
.LP
b)
if it is a repeated CR TPDU (see Note\ 1) then the transport
entity shall carry out the action which is appropriate
from the following:
.LP
1)
if a CC TPDU has alredy been sent, and acknowledged:
treat as a protocol error;
.LP
2)
if a DR TPDU is unacknowledged (whether or not a
CC\ TPDU is unacknowledged): retransmit the DR\ TPDU,
but setting the source reference to zero;
.LP
3)
if the T\(hyCONNECT response has not yet been received
from the user: take no action;
.LP
4)
otherwise: retransmit the CC TPDU followed by any
unacknowledged ED\ TPDU (see Note\ 2) and any
DT\ TPDU.
.LP
\fINote\ 1\fR \ \(em\ A repeated CR can be identified by being on
a network connection with the appropriate network
addresses and having a correct source reference.
.LP
\fINote\ 2\fR \ \(em\ The transport entity should not use network
expedited until the CC is acknowledged (see \(sc\ 6.5).
This rule prevents the network expedited from
overtaking the CC\ TPDU;
.bp
.LP
c)
if it is an RJ or ED TPDU, then one of the following actions
shall be taken:
.LP
1)
if a DR TPDU is unacknowledged, then the transport
entity shall retransmit it;
.LP
2)
if a CC TPDU is unacknowledged, the RJ or ED\ TPDU
shall be considered as acknowledging the CC\ TPDU, and the transport entity
shall carry out the data resynchronization procedures (\(sc\ 6.14.4.3);
.LP
3)
if a CC TPDU was never sent, the RJ or ED\ TPDU should be considered
as a protocol error;
.LP
4)
otherwise, the transport entity shall carry out the
data resynchronization procedures (\(sc\ 6.14.4.3.)
.sp 1P
.LP
6.14.4.3
\fIData resynchronization procedures\fR
.sp 9p
.RT
.PP
The transport entity shall carry out the following actions in the following
order:
.RT
.LP
a)
(re)transmit any ED TPDU which is unacknowledged;
.LP
b)
transmit an RJ TPDU with YR\(hyTU\(hyNR field set to the TPDU\(hyNR
of the next expected DT TPDU;
.LP
c)
wait for the next TPDU from the other transport entity,
unless it has already been received. If a DR\ TPDU is received,
the transport entity shall send a DC\ TPDU, freeze the reference,
inform the TS\(hyuser of the disconnection and take no further
action [i.e.\ it shall not follow the procedures in
\(sc\ 6.14.4.3\ d)]. If an RJ\ TPDU is received, the procedures of
\(sc\ 6.14.4.3\ d) shall be followed. If an ED\ TPDU is received, the
procedures as described in \(sc\ 6.11 shall be followed. If it is a
duplicated ED\ TPDU, the transport entity shall acknowledge it
with an EA\ TPDU, discard the duplicated ED\ TPDU and wait again
for the next TPDU;
.LP
d)
(re)transmit any DT TPDUs which are unacknowledged,
subject to any applicable flow control procedures
(see Note).
.LP
\fINote\fR \ \(em\ The RJ TPDU may have reduced the credit.
.sp 2P
.LP
6.15
\fIMultiplexing and demultiplexing\fR
.sp 1P
.RT
.sp 1P
.LP
6.15.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The multiplexing and demultiplexing procedures are used in
Classes\ 2, 3 and\ 4 to allow several transport connections to share a network
connection at the same time.
.RT
.sp 1P
.LP
6.15.2
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure makes use of the following TPDUs and
parameters:
.RT
.LP
CC, DR, DC, DT, AK, ED, EA, RJ and ER TPDUs:
.LP
\(em
DST\(hyREF.
.sp 1P
.LP
6.15.3
\fIProcedure\fR
.sp 9p
.RT
.PP
The transport entities shall be able to send and receive on the
same network connection TPDUs belonging to different transport connections.
.PP
\fINote\ 1\fR \ \(em\ When performing demultiplexing, the transport connection
to which the TPDUs apply is determined by the procedures defined in \(sc\
6.9.
.PP
\fINote\ 2\fR \ \(em\ Multiplexing allows the concatenation of TPDUs belonging
to different transport connections to be transferred in the same N\(hyDATA
primitive (see \(sc\ 6.4).
.RT
.sp 2P
.LP
6.16
\fIExplicit flow control\fR
.sp 1P
.RT
.sp 1P
.LP
6.16.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The explicit flow control procedure is used in Classes\ 2, 3 and\ 4 to
regulate the flow of DT TPDUs independently of the flow control in the
other layers.
.bp
.RT
.sp 1P
.LP
6.16.2
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure makes use of the following TPDUs and
parameters:
.RT
.LP
a)
CR, CC, AK and RJ TPDUs:
.LP
\(em
CDT.
.LP
b)
DT TPDU:
.LP
\(em
TPDU\(hyNR.
.LP
c)
AK TPDU:
.LP
\(em
YR\(hyTU\(hyNR;
.LP
\(em
subsequence number;
.LP
\(em
flow control confirmation.
.LP
d)
RJ TPDU:
.LP
\(em
YR\(hyTU\(hyNR.
.sp 1P
.LP
6.16.3
\fIProcedure\fR
.sp 9p
.RT
.PP
The procedures differ in different classes. They are defined in the sections
specifying the separate classes.
.RT
.sp 2P
.LP
6.17
\fIChecksum\fR
.sp 1P
.RT
.sp 1P
.LP
6.17.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The checksum procedure is used to detect corruption of TPDUs by the NS\(hyprovider.
.PP
\fINote\fR \ \(em\ Although a checksum algorithm has to be adapted to the
type of errors expected on the network connection, at present only one
algorithm is defined.
.RT
.sp 1P
.LP
6.17.2
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure uses the following TPDUs and parameters:
.RT
.LP
All TPDUs:
.LP
\(em
checksum.
.sp 1P
.LP
6.17.3
\fIProcedure\fR
.sp 9p
.RT
.PP
The checksum is used only in Class 4. It shall always be used for the CR\
TPDU, and shall be used for all other TPDUs unless the non\(hyuse of the
checksum was selected during connection establishment.
.PP
The sending transport entity shall transmit TPDUs with the checksum
parameter set such that the following formulae are satisfied:
\v'6p'
.RT
.LP
@ pile {\fIL\fR above sum above \fIi\fR =1
} @ \fIa
\di\u\fR \(== 0 (modulo 255)
.LP
@ pile {\fIL\fR above sum above \fIi\fR =1
} @ \fIia
\di\u\fR \(== 0 (modulo 255)
.LP
.sp 1
where
.LP
\fIi\fR =
number (i.e. position) of an octet within the TPDU
(see \(sc\ 13.2).
.LP
\fIa\fR\d\fIi\fR\u =
value of octet in position \fIi\fR .
.LP
\fIL\fR =
length of TPDU in octets.
.PP
A transport entity which receives a TPDU for a transport
connection for which the use of checksum has been agreed and which does not
satisfy the above formulae shall discard the TPDU (see also Note\ 2).
.bp
.PP
When a spurious TPDU is received and an answer is to be sent the
transport entity shall:
.RT
.LP
a)
if it supports the checksum algorithm and the received TPDU contains
a checksum parameter, include a checksum parameter in the answering
TPDU; or
.LP
b)
in all other cases, not include a checksum parameter in the answering TPDU.
.PP
An entity not supporting checksum may always suppose that a
CR\ TPDU with Class\ 4 proposed is correct and therefore negotiate down to a
class lower than\ 4.
.PP
\fINote\ 1\fR \ \(em\ An efficient algorithm for determining the checksum
parameters is given in Appendix\ I.
.PP
\fINote\ 2\fR \ \(em\ If the checksum is incorrect, it is not possible to know
with certainty to which transport connection the TPDU is related; thus,
further action may be taken for all the transport connections assigned
to the network connection (see \(sc\ 6.9).
.PP
\fINote\ 3\fR \ \(em\ The checksum proposed is easy to calculate and so
will not impose a heavy burden on implementations. However, it will not
detect insertion or loss of leading or trailing zeros and will not detect
some octets
misordering.
.PP
\fINote\ 4\fR \ \(em\ When a TPDU is received on a network connection, it is
never possible to know with certainty that only Class\ 4 transport connections
use this network connection because it may be a TPDU performing
reassignment.
.PP
Therefore the only way to check the validity is the
following:
.RT
.LP
a)
if the network connection is used by a Class\ 0 or Class\ 1
transport connection, there is no checksum;
.LP
b)
examine the TPDU code;
.LP
c)
deduce the fixed part length;
.LP
d)
from LI, deduce the variable part;
.LP
e)
go through parameters and if the checksum parameter is
found, then verify it;
.LP
f
)
if it is incorrect, then assume that transport
connection is Class\ 4 and drop it;
.LP
g)
if it is correct, then associate the TPDU with a transport
connection; if the transport connection uses the checksum,
it is correct; else, it must be considered as a protocol
error.
.sp 2P
.LP
6.18
\fIFrozen references\fR
.sp 1P
.RT
.sp 1P
.LP
6.18.1
\fIPurpose\fR
.sp 9p
.RT
.PP
This procedure is used in order to prevent re\(hyuse of a
reference while TPDUs associated with the old use of the reference may still
exist.
.RT
.sp 1P
.LP
6.18.2
\fIProcedure\fR
.sp 9p
.RT
.PP
When a transport entity determines that a particular connection is released,
it shall place the reference which it has allocated to the connection in
a frozen state according to the procedures of the class. While frozen,
the reference shall not be re\(hyused.
.PP
\fINote\fR \ \(em\ The frozen reference procedure is necessary because
retransmission or misordering can cause TPDUs bearing a reference to arrive
at an entity after it has released the connection for which it allocated
the
reference. Retransmission, for example, can arise when the class includes
either resynchronization (see \(sc\ 6.14) or retransmission on timeout (see
\(sc\ 6.19).
.RT
.sp 1P
.LP
6.18.2.1
\fIProcedure for Classes 0 and 2\fR
.sp 9p
.RT
.PP
This Recommendation does not specify frozen reference procedures
for classes\ 0 and\ 2.
.PP
\fINote\fR \ \(em\ For consistency with the other classes, references may be
frozen as a local matter.
.bp
.RT
.sp 1P
.LP
6.18.2.2
\fIProcedure for Classes 1 and 3\fR
.sp 9p
.RT
.PP
The frozen reference procedure is used except in the following
cases (see Note\ 1):
.RT
.LP
a)
when the transport entity receives a DC TPDU in response to
a DR TPDU which it has sent (see Note\ 2);
.LP
b)
when the transport entity sends a DR TPDU in response to a
CR TPDU which it has received (see Note\ 3);
.LP
c)
when the transport entity has considered the connection to
be released after the expiration of the TWR timer
(see Note\ 4);
.LP
d)
when the transport entity receives a DR or ER TPDU in
response to a CR TPDU which it has sent.
.PP
The period of time for which the reference remains frozen shall be greater
than the TWR time.
.PP
\fINote\ 1\fR \ \(em\ However, even in these cases, for consistency, freezing
the reference may be done as a local decision.
.PP
\fINote\ 2\fR \ \(em\ When the DC TPDU is received, it is certain that
the other transport entity considers the connection released.
.PP
\fINote\ 3\fR \ \(em\ When the DR or ER TPDU is sent, the peer transport
entity has not been informed of any reference assignment and thus cannot
possibly make use of a reference (this includes the case where a CC\ TPDU
was sent, but was
lost).
.PP
\fINote\ 4\fR \ \(em\ In \(sc\ 6.18.2\ c), the transport entity has already
effectively frozen the reference for an adequate period.
.RT
.sp 1P
.LP
6.18.2.3
\fIProcedure for Class 4\fR
.sp 9p
.RT
.PP
The frozen reference procedure shall be used in Class 4. The
period for which the reference remains frozen shall be greater than\ \fIL\fR
(see
\(sc\ 12.2.1.1.6).
.RT
.sp 2P
.LP
6.19
\fIRetransmission on timeout\fR
.sp 1P
.RT
.sp 1P
.LP
6.19.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The procedure is used in Class 4 to cope with unsignalled loss of TPDUs
by the NS\(hyprovider.
.RT
.sp 1P
.LP
6.19.2
\fITPDUs used\fR
.sp 9p
.RT
.PP
The procedure makes use of the following TPDUs:
.RT
.sp 1P
.ce 1000
CR, CC, DR, DT, ED and AK TPDUs.
.ce 0
.sp 1P
.LP
6.19.3
\fIProcedure\fR
.sp 9p
.RT
.PP
The procedure is specified in the procedures for Class 4 (see
\(sc\ 12.2.1.2\ i)).
.RT
.sp 2P
.LP
6.20
\fIResequencing\fR
.sp 1P
.RT
.sp 1P
.LP
6.20.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The resequencing procedure is used in Class 4 to cope with
misordering of TPDUs by the NS\(hyprovider.
.RT
.sp 1P
.LP
6.20.2
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure uses the following TPDUs and parameters:
.RT
.LP
a)
DT TPDU:
.LP
\(em
TPDU\(hyNR.
.LP
b)
ED TPDU:
.LP
\(em
ED\(hyTPDU\(hyNR.
.bp
.sp 1P
.LP
6.20.3
\fIProcedure\fR
.sp 9p
.RT
.PP
The procedure is specified in the procedures for Class\ 4 (see
\(sc\ 12.2.3.5).
.RT
.sp 2P
.LP
6.21
\fIInactivity control\fR
.sp 1P
.RT
.sp 1P
.LP
6.21.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The inactivity control procedure is used in Class 4 to cope with
unsignalled termination of a network connection.
.RT
.sp 1P
.LP
6.21.2
\fIProcedure\fR
.sp 9p
.RT
.PP
The procedure is specified in the procedures for Class 4 (see
\(sc\ 12.2.3.3).
.RT
.sp 2P
.LP
6.22
\fITreatment of\fR
\fIprotocol errors\fR
.sp 1P
.RT
.sp 1P
.LP
6.22.1
\fIPurpose\fR
.sp 9p
.RT
.PP
The procedure for treatment of protocol errors is used in all
classes to deal with invalid TPDUs.
.RT
.sp 1P
.LP
6.22.2
\fITPDUs and parameters used\fR
.sp 9p
.RT
.PP
The procedure uses the following TPDUs and parameters:
.RT
.LP
a)
ER TPDU:
.LP
\(em
reject cause;
.LP
\(em
invalid TPDU.
.LP
b)
DR TPDU:
.LP
\(em
reason code.
.sp 1P
.LP
6.22.3
\fIProcedure\fR
.sp 9p
.RT
.PP
A transport entity that receives a TPDU that can be associated to a transport
connection and is invalid or constitutes a protocol error (see
\(sc\(sc\ 3.2.16 and 3.2.17) shall take one of the following actions so
as not to
jeopardize any other transport connections not assigned to that network
connection:
.RT
.LP
a)
transmitting an ER TPDU;
.LP
b)
resetting or closing the network connection; or
.LP
c)
invoking the release procedures appropriate to the
class.
.PP
Under certain circumstances it is also possible to discard the
TPDU.
.PP
If an ER TPDU is sent in Class 0, it shall contain the octets of
the invalid TPDU up to and including the octet where the error was detected
(see Notes\ 3, 4 and\ 5).
.PP
If the TPDU cannot be associated with a particular transport
connection, the transport entity shall follow the procedure in \(sc\ 6.9.
.PP
\fINote\ 1\fR \ \(em\ In general, no further action is specified for the
receiver of the ER TPDU, but it is suggested that it initiates the release
procedure
appropriate to the class. If the ER\ TPDU has been received as an answer to a
CR\ TPDU, then the connection is regarded as released (see \(sc\ 6.6).
.PP
\fINote\ 2\fR \ \(em\ Care should be taken by a transport entity receiving
several invalid TPDUs or ER\ TPDUs to avoid looping if the error is generated
repeatedly.
.PP
\fINote\ 3\fR \ \(em\ If the invalid received TPDU is greater than the
selected maximum TPDU size, it is possible that it cannot be included in
the invalid
TPDU parameter of the ER\ TPDU.
.PP
\fINote\ 4\fR \ \(em\ It is suggested that the sender of the ER TPDU start a
timer TS2 to ensure the release of the connection. If the timer expires, the
transport entity shall initiate the release procedures appropriate to the
class. The timer should be stopped when a DR\ TPDU or an N\(hyDISCONNECT
indication is received.
.PP
\fINote\ 5\fR \ \(em\ In classes other than 0, it is suggested that the
invalid TPDU be also included in the ER\ TPDU.
.bp
.RT
.sp 2P
.LP
6.23
\fISplitting and recombining\fR
.sp 1P
.RT
.sp 1P
.LP
6.23.1
\fIPurpose\fR
.sp 9p
.RT
.PP
This procedure is used only in Class\ 4 to allow a transport
connection to make use of multiple network connections to provide additional
resilience against network failure, to increase throughput, or for other
reasons.
.RT
.sp 1P
.LP
6.23.2
\fIProcedure\fR
.sp 9p
.RT
.PP
When this function is being used, a transport connection may be
assigned (see \(sc\ 6.1) to multiple network connections (see Note\ 1).
TPDUs for
the connection may be sent over any such network connection.
.PP
If the use of Class 4 is not accepted by the remote transport entity following
the negotiation rules, then no network connection except that over
which the CR\ TPDU was sent may have this transport connection assigned to it.
.PP
\fINote\ 1\fR \ \(em\ The resequencing function of Class 4 (see \(sc\ 6.20)
is used to ensure that TPDUs are processed in the correct sequence.
.PP
\fINote\ 2\fR \ \(em\ Either transport entity may assign the connection to
further network connections of which it is the owner at any time during the
lifetime of the transport connection, provided the following constraints are
respected:
.RT
.LP
\(em
the initiator does not start splitting before having received the CC\ TPDU;
.LP
\(em
as soon as a new assignment is done, it is recommended to
send a TPDU on this network connection in order to make the remote entity
aware of this assignment.
.PP
\fINote\ 3\fR \ \(em\ In order to enable the detection of unsignalled network
connection failures, a transport entity performing splitting should ensure
that TPDUs are sent at intervals on each supporting network connection,
for example by sending successive TPDUs on successive network connections,
where the set of network connections is used cyclically. By monitoring
each network connection, a transport entity may detect unsignalled network
connection failures,
following the inactivity procedures defined in \(sc\ 12.2.3.3. Thus, for each
network connection, no period\ I (see \(sc\ 12.2.3.1) may elapse without
the receipt of some TPDU for some transport connection.
.sp 2P
.LP
\fB7\fR \fBProtocol classes\fR
.sp 1P
.RT
.PP
Table 6/X.224 gives an overview of which elements of procedure are included
in each class. In certain cases, the elements of procedure within
different classes are not identical, and, for this reason, Table\ 6/X.224
cannot be considered part of the definitive specification of the protocol.
.RT
.sp 2P
.LP
\fB8\fR \fBSpecification for Class 0: simple class\fR
.sp 1P
.RT
.sp 1P
.LP
8.1
\fIFunctions of Class 0\fR
.sp 9p
.RT
.PP
Class 0 is designed to have minimum functionality. It provides only the
functions needed for connection establishment with negotiation, data
transfer with segmenting and protocol error reporting.
.PP
Class 0 provides transport connections with flow control based on the
network service provided flow control, and disconnection based on the network
service disconnection.
.RT
.sp 2P
.LP
8.2
\fIProcedures for Class 0\fR
.sp 1P
.RT
.sp 1P
.LP
8.2.1
\fIProcedures applicable at all times\fR
.sp 9p
.RT
.PP
The transport entities shall use the following
procedures:
.RT
.LP
a)
TPDU transfer (see \(sc\ 6.2);
.LP
b)
association of TPDUs with transport connections (see
\(sc\ 6.9);
.LP
c)
treatment of protocol errors (see \(sc\ 6.22);
.LP
d)
error release (see \(sc\ 6.8).
.bp
.ce
\fBH.T. [T6.224]\fR
.ce
TABLE\ 6/X.224
.ce
\fBAllocation of elements of procedure within classes\fR
.ps 9
.vs 11
.nr VS 11
.nr PS 9
.TS
center box;
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
X X X X X TPDU Transfer 6.2\
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
X
X
X
X
Segmenting and reassembling
6.3\
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
X
X
X
X
Concatenation and separation
6.4\
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
X
X
X
Connection Establishment
6.5\
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
X
X
X
X
Connection Refusal
6.6\
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
X
X
X
X
Normal Release
6.7\
implicit
explicit
X
X
X
X
X
Error Release
6.8\
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
X T{
X
Association of TPDUs with TCs
6.9\
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
X
X
X
X
Data TPDU Numbering
6.10
normal
extended
.
X
m\|\ua\d\u)\d
o\|\ua\d\u)\d
m
o
m
o
Expedited Data Transfer
6.11
network normal
network express
.
m
ao
X\|\ua\d\u)\d
X\fR
X
Reassignment after failure
6.12
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
X T{
X
\uc\d\u)\d
Retention until acknowledgement of TPDUs
6.13
Conf. receipt
AK
.
ao
m
.
X
X
Resynchronization
6.14
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
X T{
X
\uc\d\u)\d
Multiplexing and Demultiplexing
6.15
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X\|\ub\d\u)\d
X
X
Explicit Flow Control (with)
.line
Explicit Flow Control (without)
.line
6.16
.
X
X
m
o
X
X
Checksum (use of)
.line
Checksum (non\(hyuse of)
.line
6.17
.
X
X
X
X
X
o
Frozen References
6.18
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
X T{
X
X
Retransmission on Timeout
6.19
.
.
.
.
.
X
Resequencing
6.20
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
X Inactivity Control 6.21
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
Treatment of Protocol Errors
6.22
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
X
X
X
X
Splitting and Recombining
6.23
T}
.T&
lw(90p) | lw(42p) | lw(54p) | lw(6p) | lw(12p) | lw(6p) | lw(12p) | lw(6p) .
T{
X
X:
Procedure always included in class.
.line
empty square:\ Not applicable.
.line
m:
Negotiable procedure whose implementation in equipment is
mandatory.
.line
o:
Negotiable procedure whose implementation in equipment is
optional.
.line
ao:
Negotiable procedure whose implementation in equipment is optional and where use depends on availability within the network service.
.line
\ua\d\u)\d
Not applicable in class 2 when non\(hyuse of explicit flow control
is selected.
.line
\ub\d\u)\d
Multiplexing may lead to degradation of the quality of service if the non\(hyuse of explicit flow control has been selected.
.line
\uc\d\u)\d
This function is provided in class 4 using procedures other than those used in the cross reference.
.parag
T}
.TE
.nr PS 9
.RT
.ad r
\fBTableau 6/X.224 [T6.224], p. 8\fR
.sp 1P
.RT
.ad b
.RT
.LP
.bp
.sp 1P
.LP
8.2.2
\fIConnection establishment\fR
.sp 9p
.RT
.PP
The transport entities shall use the following
procedures:
.RT
.LP
a)
assignment to network connection (see \(sc\ 6.1); then
.LP
b)
connection establishment (see \(sc\ 6.5) and, if appropriate,
connection refusal (see \(sc\ 6.6);
.LP
subject to the following constraints:
.LP
c)
the CR and CC TPDUs shall contain no parameter field other than those
for TSAP\(hyID and maximum TPDU size;
.LP
d)
the CR and CC TPDUs shall not contain a data field.
.sp 1P
.LP
8.2.3
\fIData transfer\fR
.sp 9p
.RT
.PP
The transport entities shall use the segmenting and reassembling
procedure (see \(sc\ 6.3).
.RT
.sp 1P
.LP
8.2.4
\fIRelease\fR
.sp 9p
.RT
.PP
The transport entities shall use the implicit variant of the normal release
procedure (see \(sc\ 6.7).
.PP
\fINote\fR \ \(em\ The lifetime of the transport connection is directly
correlated with the lifetime of the network connection.
.RT
.sp 2P
.LP
\fB9\fR \fBSpecification for Class 1: basic error recovery class\fR
.sp 1P
.RT
.sp 1P
.LP
9.1
\fIFunctions of Class 1\fR
.sp 9p
.RT
.PP
Class 1 provides transport connections with flow control based on the network
service provided flow control, error recovery, expedited data
transfer, disconnection, and also the ability to support consecutive transport
connections on a network connection.
.PP
This class provides the functionality of Class 0 plus the ability to recover
after a failure signalled by the Network Layer, without involving the TS\(hyuser.
.RT
.sp 2P
.LP
9.2
\fIProcedures for Class 1\fR
.sp 1P
.RT
.sp 1P
.LP
9.2.1
\fIProcedures applicable at all times\fR
.sp 9p
.RT
.PP
The transport entities shall use the following
procedures:
.RT
.LP
a)
TPDU transfer (see \(sc\ 6.2);
.LP
b)
association of TPDU with transport connections (see \(sc\ 6.9);
.LP
c)
treatment of protocol errors (see \(sc\ 6.22);
.LP
d)
reassignment after failure (see \(sc\ 6.12);
.LP
e)
resynchronization (see \(sc\ 6.14), or reassignment after
failure (see \(sc\ 6.12) together with resynchronization
(see \(sc\ 6.14);
.LP
f
)
concatenation and separation (see \(sc\ 6.4);
.LP
g)
retention until acknowledgment of TPDUs (see \(sc\ 6.13); the
variant used, AK or confirmation of receipt, shall be as
selected during connection establishment (see Notes);
.LP
h)
frozen references (see \(sc\ 6.18).
.PP
\fINote\ 1\fR \ \(em\ The negotiation of the variant of retention until
acknowledgment of TPDUs procedure to be used over the transport connection
has been designed such that if the initiator proposes the use of the AK
variant
(i.e. the mandatory implementation option), the responder has to accept
use of this option and if the initiator proposes use of the confirmation
of receipt
variant the responder is entitled to select use of the AK variant.
.PP
\fINote\ 2\fR \ \(em\ The AK variant makes use of AK TPDUs to release copies
of retained DT\ TPDUs. The CDT parameter of AK\ TPDUs in Class\ 1 is not
significant, and is set to\ 1111.
.PP
\fINote\ 3\fR \ \(em\ The confirmation of receipt variant is restricted
to this class and its use depends on the availability of the network layer
receipt
confirmation service, and the expected cost reduction.
.bp
.RT
.sp 1P
.LP
9.2.2
\fIConnection establishment\fR
.sp 9p
.RT
.PP
The transport entities shall use the following
procedures:
.RT
.LP
a)
assignment to network connection (see \(sc\ 6.1); then
.LP
b)
connection establishment (see \(sc\ 6.5) and, if appropriate,
connection refusal (see \(sc\ 6.6).
.sp 2P
.LP
9.2.3
\fIData transfer\fR
.sp 1P
.RT
.sp 1P
.LP
9.2.3.1
\fIGeneral\fR
.sp 9p
.RT
.PP
The sending transport entity shall use the following
procedures:
.RT
.LP
a)
segmenting (see \(sc\ 6.3); then
.LP
b)
the normal format variant of DT TPDU numbering (see
\(sc\ 6.10).
.LP
The receiving transport entity shall use the following
procedures:
.LP
c)
the normal format variant of DT TPDU numbering (see \(sc\ 6.10); then
.LP
d)
reassembling (see \(sc\ 6.3).
.PP
\fINote\ 1\fR \ \(em\ The use of RJ TPDU during resynchronization (see
\(sc\ 6.14) can lead to retransmission. Thus, the receipt of a duplicate
DT\ TPDU is possible; such a DT\ TPDU is discarded.
.PP
\fINote\ 2\fR \ \(em\ It is possible to decide on a local basis to issue an
N\(hyRESET request in order to force the remote entity to carry out the
resynchronization (see \(sc\ 6.14).
.RT
.sp 1P
.LP
9.2.3.2
\fIExpedited data\fR
.sp 9p
.RT
.PP
The transport entities shall use either of the network normal data or the
network expedited variants of the expedited data transfer procedure (see
\(sc\ 6.11) if their use has been selected during connection establishment
(see
Note\ 1).
.PP
The sending transport entity shall not allocate the same ED\(hyTPDU\(hyNR
to successive ED\ TPDUs (see Notes\ 2 and\ 3).
.PP
When acknowledging an ED\ TPDU by sending an EA\ TPDU the transport
entity shall put into the YR\(hyEDTU\(hyNR parameter of the EA\ TPDU the value
received in the ED\(hyTPDU\(hyNR parameter of the ED\ TPDU.
.PP
\fINote\ 1\fR \ \(em\ The negotiation of the variant of expedited data
transfer procedure to be used over the transport connection has been designed
such that if the initiator proposes the use of the network normal data
variant (i.e.,\ the mandatory implementation option), the responder has
to accept use of this
option and if the initiator proposes use of the network expedited variant,
the responder is entitled to select use of the network normal data variant.
.PP
\fINote\ 2\fR \ \(em\ This numbering enables the receiving transport entity to
discard repeated ED TPDUs when resynchronization (see \(sc\ 6.14) has taken
place.
.PP
\fINote\ 3\fR \ \(em\ No other significance is attached to the ED\(hyTPDU\(hyNR
parameter. It is suggested, but not essential, that the values used be
consecutive modulo\ 128.
.RT
.sp 1P
.LP
9.2.4
\fIRelease\fR
.sp 9p
.RT
.PP
The transport entities shall use the explicit variant of the
release procedure (see \(sc\ 6.7).
.RT
.sp 2P
.LP
\fB10\fR \fBSpecification for Class 2: multiplexing class\fR
.sp 1P
.RT
.sp 1P
.LP
10.1
\fIFunctions of Class 2\fR
.sp 9p
.RT
.PP
Class 2 provides transport connections with or without individual flow
control; no error detection or error recovery is provided.
.PP
If the network connection resets or disconnects, the transport
connection is terminated without the transport release procedure and the
TS\(hyuser is informed.
.PP
When explicit flow control is used, a credit mechanism is defined
allowing the receiver to inform the sender of the exact amount of data he is
willing to receive and expedited data transfer is available.
.bp
.RT
.sp 2P
.LP
10.2
\fIProcedures for Class 2\fR
.sp 1P
.RT
.sp 1P
.LP
10.2.1
\fIProcedures applicable at all times\fR
.sp 9p
.RT
.PP
The transport entities shall use the following
procedures:
.RT
.LP
a)
association of TPDUs with transport connections (see
\(sc\ 6.9);
.LP
b)
TPDU transfer (see \(sc\ 6.2);
.LP
c)
treatment of protocol errors (see \(sc\ 6.22);
.LP
d)
concatenation and separation (see \(sc\ 6.4);
.LP
e)
error release (see \(sc\ 6.8).
.LP
Additionally the transport entities may use the following
procedure:
.LP
f
)
multiplexing and demultiplexing (see \(sc\ 6.15).
.sp 1P
.LP
10.2.2
\fIConnection establishment\fR
.sp 9p
.RT
.PP
The transport entities shall use the following
procedures:
.RT
.LP
a)
assignment to network connection (see \(sc\ 6.1); then
.LP
b)
connection establishment (see \(sc\ 6.5) and, if applicable,
connection refusal (see \(sc\ 6.6).
.sp 1P
.LP
10.2.3
\fIData transfer when non\(hyuse of explicit flow control has\fR
\fIbeen selected\fR
.sp 9p
.RT
.PP
If this option has been selected as a result of the connection
establishment, the transport entities shall use the segmenting procedure
(see \(sc\ 6.3).
.PP
The TPDU\(hyNR field of DT TPDUs is not significant and may take any
value.
.PP
\fINote\fR \ \(em\ Expedited data transfer is not applicable (see \(sc\ 6.5).
.RT
.sp 2P
.LP
10.2.4
\fIData transfer when use of explicit flow control has been\fR
\fIselected\fR
.sp 1P
.RT
.sp 1P
.LP
10.2.4.1
\fIGeneral\fR
.sp 9p
.RT
.PP
The sending transport entity shall use the following
procedures:
.RT
.LP
a)
segmenting (see \(sc\ 6.3); then
.LP
b)
DT TPDU numbering (see \(sc\ 6.10);
.LP
The receiving transport entity shall use the following
procedures:
.LP
c)
DT TPDU numbering (see \(sc\ 6.10); if a DT\ TPDU is received
which is out of sequence it shall be treated as a protocol error; then
.LP
d)
reassembling (see \(sc\ 6.3).
.PP
The variant of the DT TPDU numbering which is used by both
transport entities shall be that which was agreed at connection
establishment.
.sp 1P
.LP
10.2.4.2
\fIFlow control\fR
.sp 9p
.RT
.PP
The transport entities shall send an initial credit (which may be zero)
in the CDT field of the CR or CC TPDU. This credit represents the initial
value of the upper window allocated to the peer entity.
.PP
The transport entity that receives the CR or the CC TPDU shall
consider its lower window edge as zero, and its upper window edge as the
value of the CDT field in the received TPDU.
.PP
In order to authorize the transmission of DT TPDUs by its peer, a
transport entity may transmit an AK\ TPDU at any time, subject to the following
constraints:
.RT
.LP
a)
the YR\(hyTU\(hyNR parameter shall be at most one greater than the TPDU\(hyNR
parameter of the last received DT\ TPDU or shall be zero if no DT\ TPDU
has been received;
.LP
b)
if an AK TPDU has previously been sent, the value of the
YR\(hyTU\(hyNR parameter shall not be lower than that in the previously sent
AK\ TPDU;
.LP
c)
the sum of the YR\(hyTU\(hyNR and CDT parameters shall not be less than
the upper window edge allocated to the remote entity (see Note\ 1).
.bp
.PP
A transport entity which receives an AK TPDU shall consider the
YR\(hyTU\(hyNR parameter as its new lower window edge, and the sum of YR\(hyTU\(hyNR
and
CDT as its new upper window edge. If either of these have been reduced or if
the lower window edge has become more than one greater than the TPDU\(hyNR
of the last transmitted DT TPDU, this shall be treated as a protocol error
(see
\(sc\ 6.22).
.PP
A transport entity shall not send a DT TPDU with a TPDU\(hyNR outside of
the transmit window (see Notes\ 2 and\ 3).
.PP
\fINote\ 1\fR \ \(em\ This means that credit reduction is not applicable.
.PP
\fINote\ 2\fR \ \(em\ This means that a transport entity is required to stop
sending if the TPDU\(hyNR parameter of the next DT\ TPDU which would be
sent would be the upper window edge. Sending of DT\ TPDU may be resumed
if an AK\ TPDU is
received which increases the upper window edge.
.PP
\fINote\ 3\fR \ \(em\ The rate at which a transport entity progresses the
upper window edge allocated to its peer entity constrains the throughput
attainable on the transport connection.
.RT
.sp 1P
.LP
10.2.4.3
\fIExpedited data\fR
.sp 9p
.RT
.PP
The transport entities shall follow the network normal data variant of
the expedited data transfer procedure in \(sc\ 6.11 if its use has been
agreed during connection establishment. ED and EA TPDUs are not subject
to the flow
control procedures in \(sc\ 10.2.4.2. The ED\(hyTPDU\(hyNR and YR\(hyEDTU\(hyNR
parameters of ED and EA TPDUs respectively are not significant and may
take any value.
.RT
.sp 1P
.LP
10.2.5
\fIRelease\fR
.sp 9p
.RT
.PP
The transport entities shall use the explicit variant of the
release procedure in \(sc\ 6.7.
.RT
.sp 2P
.LP
\fB11\fR \fBSpecification for Class 3: error recovery and multiplexing
class\fR
.sp 1P
.RT
.sp 1P
.LP
11.1
\fIFunctions of Class 3\fR
.sp 9p
.RT
.PP
This class provides the functionality of Class 2 (with use of
explicit flow control) plus the ability to recover after a failure signalled
by the Network Layer without involving the TS\(hyuser.
.PP
The mechanisms used to achieve this functionality also allow the
implementation of more flexible flow control.
.RT
.sp 2P
.LP
11.2
\fIProcedures for Class 3\fR
.sp 1P
.RT
.sp 1P
.LP
11.2.1
\fIProcedures applicable at all times\fR
.sp 9p
.RT
.PP
The transport entities shall use the following
procedures:
.RT
.LP
a)
association of TPDUs with transport connections (see
\(sc\ 6.9);
.LP
b)
TPDU transfer (see \(sc\ 6.2) and retention until
acknowledgment of TPDUs (AK variant only) (see \(sc\ 6.13);
.LP
c)
treatment of protocol errors (see \(sc 6.22);
.LP
d)
concatenation and separation (see \(sc 6.4);
.LP
e)
reassignment after failure (see \(sc\ 6.12), together with
resynchronization (see \(sc\ 6.14);
.LP
f
)
frozen references (see \(sc\ 6.18).
.PP
Additionally, the transport entities may use the following
procedure:
.LP
g)
multiplexing and demultiplexing (see \(sc\ 6.15).
.sp 1P
.LP
11.2.2
\fIConnection establishment\fR
.sp 9p
.RT
.PP
The transport entity shall use the following procedures:
.RT
.LP
a)
assignment to network connections (see \(sc\ 6.1); then
.LP
b)
connection establishment (see \(sc\ 6.5) and, if appropriate,
connection refusal (see \(sc\ 6.6).
.bp
.sp 2P
.LP
11.2.3
\fIData transfer\fR
.sp 1P
.RT
.sp 1P
.LP
11.2.3.1
\fIGeneral\fR
.sp 9p
.RT
.PP
The sending transport entity shall use the following
procedures:
.RT
.LP
a)
segmenting (see \(sc\ 6.3); then
.LP
b)
DT TPDU numbering (see \(sc\ 6.10); after receipt of an RJ\ TPDU (see
\(sc\ 11.2.3.2) the next DT\ TPDU to be sent may have a value
which is not the previous value of TPDU\(hyNR plus one.
.PP
The receiving transport entity shall use the following
procedures:
.LP
c)
DT TPDU numbering (see \(sc\ 6.10); the TPDU\(hyNR parameter of
each received DT\ TPDU shall be treated as a protocol error if it
exceeds the greatest such value received in a previous DT\ TPDU
by more than one (see Note); then
.LP
d)
reassembling (see \(sc\ 6.3); duplicated TPDUs shall be
eliminated before reassembling is performed.
.PP
\fINote\fR \ \(em\ The use of RJ TPDUs (see \(sc\ 11.2.3.2) can lead to
retransmission and reduction of credit. Thus the receipt of a DT\ TPDU
which is a duplicate, or which is greater than or equal to the upper window
edge
allocated to the peer entity, is possible and is therefore not treated as a
protocol error.
.sp 1P
.LP
11.2.3.2
\fIUse of RJ TPDU\fR
.sp 9p
.RT
.PP
A transport entity may send an RJ TPDU at any time in order to
invite retransmission or to reduce the upper window edge allocated to the
peer entity (see Note\ 1).
.PP
When an RJ TPDU is sent, the following constraints shall be
respected:
.RT
.LP
a)
the YR\(hyTU\(hyNR parameter shall be at most one greater than the greatest
such value received in a previous DT\ TPDU, or shall be
zero if no DT\ TPDU has yet been received (see Note\ 2);
.LP
b)
if an AK or RJ TPDU has previously been sent, the YR\(hyTU\(hyNR parameter
shall not be lower than that in the previously sent
AK or RJ\ TPDU.
.PP
When a transport entity receives an RJ\ TPDU (see Note 3):
.LP
c)
the next DT TPDU to be transmitted, or retransmitted, shall be that for
which the value of the TPDU\(hyNR parameter is equal
to the value of the YR\(hyTU\(hyNR parameter of the RJ\ TPDU;
.LP
d)
the sum of the values of the YR\(hyTU\(hyNR and CDT parameters of the
RJ\ TPDU becomes the new upper window edge (see Note\ 4).
.PP
\fINote\ 1\fR \ \(em\ An RJ TPDU can also be sent as part of the
resynchronization (see \(sc\ 6.14) and reassignment after failure (see
\(sc\ 6.12)
procedures.
.PP
\fINote\ 2\fR \ \(em\ It is suggested that the YR\(hyTU\(hyNR parameter
be equal to the TPDU\(hyNR parameter of the next expected DT\ TPDU.
.PP
\fINote\ 3\fR \ \(em\ These rules are a subset of those specified for when an
RJ\ TPDU is received during resynchronization (see \(sc\ 6.14) and reassignment
after failure (see \(sc\ 6.12).
.PP
\fINote\ 4\fR \ \(em\ This means that RJ TPDU can be used to reduce the upper
window edge allocated to the peer entity (credit reduction).
.RT
.sp 1P
.LP
11.2.3.3
\fIFlow control\fR
.sp 9p
.RT
.PP
The procedures shall be as defined in \(sc\ 10.2.4.2, except
that:
.RT
.LP
a)
a credit reduction may lead to the reception of a DT\ TPDU
with a TPDU\(hyNR parameter whose value is not but would have been
less than the upper window edge allocated to the remote entity
prior to the credit reduction. This shall not be treated as a
protocol error;
.LP
b)
receipt of an AK TPDU which sets the lower window edge more than one
greater than the TPDU\(hyNR of the last transmitted
DT\ TPDU shall not be treated as a protocol error, provided
that all acknowledged DT\ TPDUs have been previously
transmitted (see Notes\ 1 and\ 2).
.bp
.PP
\fINote\ 1\fR \ \(em\ This can only occur during retransmission following
receipt of an RJ\ TPDU.
.PP
\fINote\ 2\fR \ \(em\ The transport entity may either continue retransmission
as before or retransmit only those DT\ TPDUs not acknowledged by the AK\
TPDU. In
either case, copies of the acknowledged DT\ TPDUs need not be retained
further.
.RT
.sp 1P
.LP
11.2.3.4
\fIExpedited data\fR
.sp 9p
.RT
.PP
The transport entities shall follow the network normal data variant of
expedited data transfer procedure in \(sc\ 6.11 if its use has been agreed
during connection establishment.
.PP
The sending transport entity shall not allocate the same ED\(hyTPDU\(hyNR
to successive ED\ TPDUs.
.PP
The receiving transport entity shall transmit an EA TPDU with the same
value in its YR\(hyEDTU\(hyNR\(hyparameter. If, and only if, this number
is different
from that of the previously received ED\ TPDU, shall it generate a T\(hyEXPEDITED
DATA indication to convey the data to the TS\(hyuser (see Note\ 2).
.PP
\fINote\ 1\fR \ \(em\ No other significance is attached to the ED\(hyTPDU\(hyNR
parameter. It is suggested, but not essential, that the values be consecutive
modulo\ 2\uD\dlFn\fR , where\ \fIn\fR is the number of bits of the parameter.
.PP
\fINote\ 2\fR \ \(em\ This procedure ensures that the TS\(hyuser does not
receive
data corresponding to the same ED\ TPDU more than once.
.RT
.sp 1P
.LP
11.2.4
\fIRelease\fR
.sp 9p
.RT
.PP
The transport entities shall use the explicit variant of the
release procedure (see \(sc\ 6.7).
.RT
.LP
.rs
.sp 29P
.LP
\fBMONTAGE:\ \fR SUITE DE LA REC.\ X.224 SUR LE RSTE DE CETTE PAGE
.sp 1P
.RT
.LP
.bp